mysql引數詳解

2022-07-25 19:45:14 字數 1746 閱讀 2111

1.日誌監控三個經典狀態引數

1

.innodb_log_waits

使用者將redo資訊寫到log_buffer中產生等待的次數,這種情況下一般都是log buffer的寫效能差造成的。官方文件提示因為log_buffer太小導致的。這個引數體現了log_buffer的寫效能

2.innodb_log_writes

log_buffer發生物理寫,寫入redo_log檔案的次數

3.innodb_os_log_written

日誌每秒寫的位元組數

2.計算資料庫檢索資料命中率

innodb_buffer_pool_read_requests:使用者訪問資料請求的次數(一次訪問就是一次請求),這個引數就體現了系統的繁忙程度

innodb_buffer_pool_reads:資料不在記憶體中,而在磁碟中,也就是說物理i/o的次數

記憶體命中率=(innodb_buffer_pool_read_requests-innodb_buffer_pool_reads)/innodb_buffer_pool_read_requests

3.計算記憶體讀的趨勢

innodb_data_read 

--發生物理讀的總的位元組數,這個值除以16k也就是等於innodb_pages_read的值

innodb_pages_read

--每次讀取的頁數

innodb_rows_read

--記憶體中實際讀取的行數,反應了系統實際的工作量,如果異常,一定是出現了異常的sql

4.調整mysql資料庫的讀寫執行緒數量

innodb_write_io_threads--預設為4

innodb_read_io_threads--預設為4

是否進行調整我們要結合資料庫讀寫效能,如果資料庫在系統最繁忙的時候讀寫執行緒還有空閒等待的,那麼我們就不需要進行調整,通過下面讀寫執行緒的狀態,我們就看出資料庫的讀寫執行緒的數量不需要進行調整

i/o thread 2 state: waiting for

completed aio requests (read thread)

i/o thread 3 state: waiting for

completed aio requests (read thread)

i/o thread 4 state: waiting for

completed aio requests (read thread)

i/o thread 5 state: waiting for

completed aio requests (read thread)

i/o thread 6 state: waiting for

completed aio requests (write thread)

i/o thread 7 state: waiting for

completed aio requests (write thread)

i/o thread 8 state: waiting for

completed aio requests (write thread)

i/o thread 9 state: waiting for completed aio requests (write thread)

MySQL引數詳解

001 log raw 引數的用意 這個引數是和mysql的安全相關的,在mysql中只要開啟general log那麼客戶端對mysql的所以操作都會記錄在這個general log當中 也就是說如果客戶端執行了乙個grant all on to admin localhost identifie...

mysql引數詳解

開啟慢查詢,舊版 slow query log 超過2秒的sql語法記錄起來,設短一點來記錄除錯也是一種方法.long query time 2 log slow queries d mysql 5.6.23 winx64 log mysql slow.log log d mysql 5.6.23 ...

mysql連線引數詳解

通常資料庫連線字串為 database dbname data source 192.168.1.1 port 3306 user id root password charset utf8 treattinyasboolean false 其中 server,host,data source,da...