MySQL經常使用SQL收集

添加索引mysql

1.添加PRIMARY KEY(主鍵索引) sql

ALTER TABLE `table_name` ADD PRIMARY KEY ( `column` )ide


2.添加UNIQUE(惟一索引) 
spa

ALTER TABLE `table_name` ADD UNIQUE ( `column` ) rest

 

3.添加INDEX(普通索引) 
server

ALTER TABLE `table_name` ADD INDEX index_name ( `column` ) 索引


4.添加FULLTEXT(全文索引) 
ssl

ALTER TABLE `table_name` ADD FULLTEXT ( `column`) it


5.添加多列索引 io

ALTER TABLE `table_name` ADD INDEX index_name ( `column1`, `column2`, `column3` )


在一個表而不在另外一個表中的數據

1. 使用 NOT IN ,容易理解,效率低

SELECT DISTINCT A.ID FROM  A WHERE A.ID NOT IN (SELECT ID FROM B)

  

2. 使用 LEFT JOIN...ON... , 「B.ID IS NULL」表示左鏈接以後在B.ID字段爲NULL的記錄

SELECT A.ID FROM A LEFT JOIN B ON A.ID=B.ID WHERE B.ID IS NULL

 

3. 邏輯相對複雜,可是速度最快

SELECT * FROM  B WHERE (SELECT COUNT(1) AS NUM FROM A WHERE A.ID = B.ID) = 0


導出多張表的表結構

mysqldump -uxxx -p --set-gtid-purged=OFF -d -B TABLE_1 TABLE_2 TABLE_3 > /home/xxx/table.sql


只導出數據不導出表結構

mysqldump -uxxx -p --set-gtid-purged=OFF -t database tablename > /home/xxx/data.sql


導出數據和表結構

mysqldump -uxxx -p database > /home/xxx/export.sql


MySQL安裝爲Windows服務

mysqld install --defaults-file="C:\ProgramData\MySQL\MySQLg\my.ini" MySQL


查看和修改當前鏈接數

show processlist

修改my.ini,max_connections=xxx


查看Event執行狀況

SELECT * FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_NAME = 'EVT_NAME' AND EVENT_SCHEMA = 'SCHEMA';


在Mac OS X啓停MySQL服務

sudo /usr/local/mysql/support-files/mysql.server start/stop/restart

相關文章
相關標籤/搜索