mysql數據庫如何快速獲得庫中無主鍵的表?
獲取數據庫中除系統庫sql以外的所有沒有主鍵的表,如下所示:
挑選
表_模式,
表名
從
信息_模式。桌子
在哪里
(表模式,表名稱)不在(
選擇不同
表模式,表名稱
從
信息_模式。列
在哪里
COLUMN_KEY優先級
)
而table_schema不在(
sys,
mysql,
信息模式,
性能模式
)
挑選
_NAME,
_TYPE,
_NAME,
c.序數_位置
從
信息__約束為t,
信息__列_用法為c
在哪里
_NAM
mysql數據庫怎么修改表名?
Online-DDL功能是5.6以后加的,但是好像用的人不多。有興趣可以研究一下。
目前,佩爾科納pt-online-schema-change仍然是常見的解決方案。
gt下載Percona工具包
Pt-osc在這個工具包中。原則上,修改表結構時,會先建立一個臨時表,然后復制原表的數據,修改結構。同時,將在原始表上建立一個觸發器(update、insert、delete),將數據同步到臨時表。修改臨時表時,會進行最后一次修改,所以理論上鎖表的時間會很短。