MySQL優化相關

2021-09-24 07:47:46 字數 1364 閱讀 9986

慢查詢

檢視是否開啟慢查詢日誌 show variables like 'slow_query_log' ;

設定沒有索引的記錄到慢查詢日誌 set global log_queries_not_using_indexes=on ;

檢視超過多長時間的sql進行記錄到慢查詢日誌 show variables like 'long_query_time' ;

設定慢查詢的時間 set long_query_time=1;

慢查詢日誌格式:

6. mysql日誌位置:

慢查詢日誌分析工具

explain分析慢查詢:

索引顯示表結構

desc table_name;

檢視建表語句

show create table table_name;

查詢重複冗餘的索引

use information_schema;

select a.table_schema as '資料名'

,a.table_name as '表名'

,a.index_name as '索引1'

,b.index_name as '索引2'

,a.column_name as '重複列名'

from statistics a

join statistics b on a.table_schema = b.table_schema

and a.table_name = b.table_name

and a.seq_in_index = b.seq_in_index

and a.column_name = b.column_name

where a.seq_in_index = 1 and a.index_name <> b.index_name;

複製**

第三方工具查詢冗餘索引(會給出處理方法)

沒有安裝的先安裝

wget 

tar percona-toolkit-2.2.4.tar.gz

cd percona-toolkit-2.2.4

perl makefile.pl

make && make install

如果報錯(can't locate time/hires.pm in @inc (@inc contains....)的話,

yum -y install perl-time-hires

複製**

查詢語句

pt-duplicate-key-checker -uroot -p123456 -h127.0.0.1

(如果報錯,請按照提示安裝依賴)

複製**

MySQL優化相關

1 慢查詢分析相關的優化 通過命令檢視慢查詢最長時間,一般預設10s,對於現代高實時系統來講,乙個查詢要10秒鐘是不可接受的,所以我們對慢查詢先進行監控,然後才能進行優化 show variables like long query time 通常我們會把這個時間設定在3秒以內 set global...

mysql 相關引數 Mysql相關引數優化

mysql優化 配置在 mysqld 段裡 innodb buffer pool size 4g 除去redis所占用記憶體,可以設為可用記憶體的一半 slow query log 1 long query time 1 最大連線數優化 show variables like max connect...

mysql的相關優化

mysql的優化 mysql優化三大方向 優化mysql所在伺服器核心。對mysql配置引數進行優化 my.cnf 此優化需要進行壓力測試來進行引數調整。對sql語句以及表優化。伺服器核心方面優化 網路引數配置 網路引數配置需要修改配置檔案 etc sysctl.conf,可以在配置檔案後面新增一下...