关于mysql优化_MYSQL---关于MYSQL优化
1. 慢查詢,規定查詢超過2秒的為慢查詢(救火)
1)mysql> show full processlist;
2)用explain查看查詢語句是否經過索引,如果沒有就要建立索引
long_query_time =2
3)對需要建立索引的條件建立索引,大于300萬的記錄不能建立索引
2. 日常記錄文件
[root@MySQL?~]#?grep?gene?/data/3306/my.cnf
general_log?=?on
general_log_file?=?/data/3306/data/MySQL_oldboy.log
臨時生效:
mysql>?set?global?general_log_file?=?"/data/3306/data/MySQL_oldboy.log";
Query?OK,?0?rows?affected?(0.04?sec)
mysql>?show?variables?like?'general_log%';
+------------------+----------------------------------+
|?Variable_name????|?Value????????????????????????????|
+------------------+----------------------------------+
|?general_log??????|?ON???????????????????????????????|
|?general_log_file?|?/data/3306/data/MySQL_oldboy.log?|
+------------------+----------------------------------+
2?rows?in?set?(0.00?sec)
mysql>?set?global?general_log?=?on;
Query?OK,?0?rows?affected?(0.03?sec)
[root@oldboy?~]#?cat?/data/3306/data/MySQL_oldboy.log
/application/mysql-5.5.32/bin/mysqld,?Version:?5.5.32-log?(Source?distribution).?started?with:
Tcp?port:?3306??Unix?socket:?/data/3306/mysql.sock
Time?????????????????Id?Command????Argument
160828?19:09:22????15?Query?????show?databases
160828?19:09:25????15?Query?????explain?select?*?from?test?where?state=1
160828?19:09:28????15?Query?????show?full?processlist
160828?19:09:36????15?Query?????select?*?from?test
15?Query?????select?*?from?test
160828?19:09:37????15?Query?????select?*?from?test
160828?19:09:39????15?Quit
刪除binlog日志方法
1、設置參數自動刪除
expire_logs_days?=?7??#<==刪除7天前的日志
2、從頭刪到指定的文件位置
mysql>?purge?binary?logs?to?'mysql-bin.000004';
Query?OK,?0?rows?affected?(0.03?sec)
mysql>?system?ls?-l?/data/3306/mysql-bin*
-rw-rw----?1?mysql?mysql???126?8月??21?16:31?/data/3306/mysql-bin.000004
-rw-rw----?1?mysql?mysql???126?8月??21?16:32?/data/3306/mysql-bin.000005
-rw-rw----?1?mysql?mysql?15881?8月??28?19:16?/data/3306/mysql-bin.000006
-rw-rw----?1?mysql?mysql????84?8月??28?19:26?/data/3306/mysql-bin.index
3、按照時間刪除
mysql>?PURGE?MASTER?LOGS?BEFORE?'2016-08-28?13:00:00';
Query?OK,?0?rows?affected?(0.02?sec)
mysql>?system?ls?-l?/data/3306/mysql-bin*
-rw-rw----?1?mysql?mysql?15881?8月??28?19:16?/data/3306/mysql-bin.000006
-rw-rw----?1?mysql?mysql????28?8月??28?19:28?/data/3306/mysql-bin.index
mysql>?PURGE?MASTER?LOGS?BEFORE?DATE_SUB(NOW(?),?INTERVAL?3?DAY);
Query?OK,?0?rows?affected?(0.00?sec)
mysql>?system?ls?-l?/data/3306/mysql-bin*
-rw-rw----?1?mysql?mysql?15881?8月??28?19:16?/data/3306/mysql-bin.000006
-rw-rw----?1?mysql?mysql????28?8月??28?19:28?/data/3306/mysql-bin.index
1、硬件層面優化
1.1?數據庫物理機采購:
1.2?服務器硬件配置調整
1.2.1?服務器BIOS調整:
1.2.2?陣列卡調整:
2、軟件層優化
2.1?操作系統層面優化
2.1.1?操作系統及MySQL實例選擇
2.1.2?文件系統層優化
2.1.3?linux內核參數優化
2.2?mysql數據庫層面優化
2.2.1?my.cnf參數優化
2.2.2?關于庫表的設計規范
2.2.3?SQL語句的優化
3、網站集群架構上的優化
4、流程,制度,安全優化
總結
以上是生活随笔為你收集整理的关于mysql优化_MYSQL---关于MYSQL优化的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql 数据库编程_MySQL数据库
- 下一篇: MySQL 七天 学_7天玩转