1. 程式人生 > 實用技巧 >MySQL教程5-配置檔案my.ini詳解

MySQL教程5-配置檔案my.ini詳解

my.ini 是 MySQL 資料庫中使用的配置檔案,MySQL 伺服器啟動時會讀取這個配置檔案,我們可以通過修改這個檔案,達到更新配置的目的。本節以 Windows 系統下的 my.ini 配置檔案為樣板,講解 MySQL 配置檔案中的引數。

一般情況下,my.ini 在 MySql 安裝的根目錄下,也有可能在隱藏資料夾“ProgramData”下面。

引數說明如下表所示:

引數名稱說明
port 表示 MySQL 伺服器的埠號
basedir 表示 MySQL 的安裝路徑
datadir 表示 MySQL 資料檔案的儲存位置,也是資料表的存放位置
default-character-set 表示伺服器端預設的字符集
default-storage-engine 建立資料表時,預設使用的儲存引擎
sql-mode 表示 SQL 模式的引數,通過這個引數可以設定檢驗 SQL 語句的嚴格程度
max_connections 表示允許同時訪問 MySQL 伺服器的最大連線數。其中一個連線是保留的,留給管理員專用的
query_cache_size 表示查詢時的快取大小,快取中可以儲存以前通過 SELECT語句查詢過的資訊,再次查詢時就可以直接從快取中拿出資訊,可以改善查詢效率
table_open_cache 表示所有程序開啟表的總數
tmp_table_size 表示記憶體中每個臨時表允許的最大大小
thread_cache_size 表示快取的最大執行緒數
myisam_max_sort_file_size 表示 MySQL 重建索引時所允許的最大臨時檔案的大小
myisam_sort_buffer_size 表示重建索引時的快取大小
key_buffer_size 表示關鍵詞的快取大小
read_buffer_size 表示 MyISAM 表全表掃描的快取大小
read_rnd_buffer_size 表示將排序好的資料存入該快取中
sort_buffer_size 表示用於排序的快取大小
innodb_additional_mem_pool_size=3M
innodb_flush_log_at_trx_commit=1
innodb_log_buffer_size=2M
innodb_buffer_pool_size=107M
innodb_log_file_size=54M
innodb_thread_concurrency=18

以上是 InnoDB 儲存引擎使用的引數,引數說明如下:

    • innodb_additional_mem_pool_size:表示附加的記憶體池,用來儲存 InnoDB 表的內容。
    • innodb_flush_log_at_trx_commit:是設定提交日誌的時機,若設定為 1,InnoDB 會在每次提交後將事務日誌寫到磁碟上。
    • innodb_log_buffer_size:表示用來儲存日誌資料的快取區的大小。
    • innodb_buffer_pool_size:表示快取的大小,InnoDB 使用一個緩衝池類儲存索引和原始資料。
    • innodb_log_file_size:表示日誌檔案的大小。
    • innodb_thread_concurrency:表示在 InnoDB 儲存引擎允許的執行緒最大數。
  • 注意:每次修改 my.ini 檔案中的引數後,必須重新啟動 MySQL 服務才會有效。