1. 程式人生 > >MySQL性能優化以及常用命令

MySQL性能優化以及常用命令

常用 myisam logs lob 位置 variables cal 慢查詢 ria

1.將查詢操作SELECT中WHERE條件後面和排序字段建立索引

2.按需查詢,需要哪個字段就查哪個字段,禁止使用"SELECT * "

3.數據庫引擎最好選用InnoDB,少用MyIsam,MyIsam適合查詢較多,InnoDB適合插入和更新較多操作

4.學會分析慢查詢日誌

顯示慢查詢日誌基礎信息:show variables like ‘slow_query%‘;

技術分享圖片

顯示慢查詢日誌時間:show global variables like ‘long_query_time‘;

技術分享圖片

開啟慢查詢日誌:set global slow_query_log=‘ON‘;

設置慢查詢日誌存放位置:set global slow_query_log_file=‘/usr/local/mysql/data/slow.log‘;

設置查詢超過10秒就記錄:set global long_query_time=1;

在mysql配置文件中配置如下:

[mysqld]
slow_query_log = ON
slow_query_log_file = /usr/local/mysql/data/slow.log
long_query_time = 1

5.學會分析bin-log日誌

將特定時間段的日誌寫入制定文件中:

mysqlbinlog --no-defaults --base64-output=decode-rows -v -v --start-datetime=‘2018-05-09 09:31:30‘ --stop-datetime=‘2018-05-09 09:33:00‘ mysql-bin.000008 > demo.txt;

6.查詢出特定數據庫中數據庫存儲引擎為innodb的所有表的信息

show table status from mmj_main where ENGINE=‘innodb‘;

7.修改表的數據庫存儲引擎為innodb

alter table sdb_freeze_logs engine=innodb;

MySQL性能優化以及常用命令