日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

mysql 8 配置参数优化_mysql8 参考手册--配置非持久性优化器统计参数

發布時間:2023/12/4 数据库 49 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mysql 8 配置参数优化_mysql8 参考手册--配置非持久性优化器统计参数 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

本節介紹如何配置非持久性優化器統計信息。當innodb_stats_persistent=OFF或使用創建或更改單個表時,Optimizer統計信息不會保留在磁盤 上 STATS_PERSISTENT=0。相反,統計信息存儲在內存中,并且在服務器關閉時會丟失。統計信息還可以通過某些操作在特定條件下定期更新。

默認情況下,優化器統計信息會保留在磁盤上,并由innodb_stats_persistent 配置選項啟用。有關持久性優化器統計信息,請參見第15.8.10.1節“配置持久性優化器統計參數”。

優化器統計信息更新

非持久性優化器統計信息將在以下情況下更新:

運行中ANALYZE TABLE。

運行SHOW TABLE STATUS, SHOW INDEX或 在 啟用了該選項的情況下查詢 INFORMATION_SCHEMA.TABLES或 INFORMATION_SCHEMA.STATISTICS表 innodb_stats_on_metadata。

的默認設置 innodb_stats_on_metadata是 OFF。啟用 innodb_stats_on_metadata 可能會降低具有大量表或索引的架構的訪問速度,并降低涉及InnoDB 表的查詢的執行計劃的穩定性。 innodb_stats_on_metadata使用一條SET語句全局配置 。

SET GLOBAL innodb_stats_on_metadata=ON

注意

innodb_stats_on_metadata 僅當優化器統計信息配置為非持久性( innodb_stats_persistent 禁用時)時才適用 。

使用啟用的選項 啟動mysql客戶端 --auto-rehash,這是默認設置。該 auto-rehash選項將導致所有 InnoDB表被打開,并且打開表操作將導致統計信息被重新計算。

為了提高mysql 客戶端的啟動時間并更新統計信息,可以auto-rehash使用該 --disable-auto-rehash 選項將其關閉 。該auto-rehash 功能可為交互式用戶自動完成數據庫,表和列名稱的名稱命名。

首先打開一個表。

InnoDB 檢測到自上次更新統計信息以來,表的1/16已被修改。

配置采樣頁數

MySQL查詢優化器基于索引的相對選擇性,使用有關鍵分布的估計 統計信息來選擇執行計劃 的索引。當更新優化器統計信息,從表中的每個索引它的樣本的隨機頁面來估計 基數的指數。(這種技術被稱為 隨機潛水。) InnoDB

為了控制統計信息估計的質量(從而為查詢優化器提供更好的信息),您可以使用參數更改采樣頁數 innodb_stats_transient_sample_pages。默認的采樣頁數是8,可能不足以產生準確的估計值,從而導致查詢優化器的索引選擇不正確。對于大型表和聯接中使用的表,此技術尤其重要 。此類表的不必要的 全表掃描可能是一個嚴重的性能問題。有關調優此類查詢的提示,請參見 第8.2.1.23節“避免全表掃描”。 innodb_stats_transient_sample_pages 是可以在運行時設置的全局參數。

的值 innodb_stats_transient_sample_pages 影響InnoDB 時所有表和索引 的索引采樣innodb_stats_persistent=0。更改索引樣本大小時,請注意以下潛在的重大影響:

較小的值(例如1或2)可能會導致基數估計不準確。

增大該 innodb_stats_transient_sample_pages 值可能需要更多的磁盤讀取。大于8的值(例如100)會導致打開表或執行時間大大減慢SHOW TABLE STATUS。

優化器可能基于對索引選擇性的不同估計來選擇非常不同的查詢計劃。

無論哪種值對 innodb_stats_transient_sample_pages 系統最有效,請設置該選項并將其保留為該值。選擇一個可以對數據庫中的所有表進行合理準確估計的值,而無需過多的I / O。由于統計信息會在執行以外的其他時間自動重新計算 ANALYZE TABLE,因此增加索引樣本大小,運行ANALYZE TABLE并再次減小樣本大小沒有意義 。

較小的表通常比較大的表需要更少的索引樣本。如果您的數據庫有很多大表,則考慮使用innodb_stats_transient_sample_pages 比大多數情況下較小的表更高的值 。

總結

以上是生活随笔為你收集整理的mysql 8 配置参数优化_mysql8 参考手册--配置非持久性优化器统计参数的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。