Mysql

在 IIS7 上設置 MySQL innodb 緩衝池大小

  • December 3, 2014

我正在使用 VPS、Windows 2008 r2、IIS7、MYSQL 5.1.73、硬體配置:Ram 2GB、硬碟 40GB

在這個 VPS 上只有 1 個 .NET 應用程序正在執行。應用程序目前僅由 5 個使用者使用。我發現 MySQL 伺服器 INNODB BUFFER USAGE 是 100%

我在 my.cnf 或 my.ini 文件中找到了一些建議,例如更改緩衝區大小,但我在 VPS 上沒有找到任何文件。我也嘗試過以下命令

SET GLOBAL innodb_buffer_pool_size = 33554432

但它給了我一個錯誤

變數“innodb_buffer_pool_size”是只讀變數

任何人都可以建議我解決這個問題。

謝謝

innodb_buffer_pool_size需要重啟 MySQL。為什麼 ?

看看 Percona 的 Vadim Tkachenko 對 InnoDB 的圖示

InnoDB 架構

在左上角,您可以看到 InnoDB 緩衝池。它具有 InnoDB 表的數據和索引頁面以及用於將二級索引更改從緩衝池遷移到插入緩衝區的巨大暫存器。所有這些東西都必須寫入磁碟並完成所有事務。由於所有這些都必鬚髮生,最好將innodb_buffer_pool_size 保留為靜態變數。

您需要做的是將該選項添加到 my.ini

[mysqld]
innodb_buffer_pool_size = 32M

並重新啟動mysql。

引用自:https://serverfault.com/questions/645127