MySQL性能優化以及常用命令
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性能優化以及常用命令