亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

MySQL的配置文件詳解及實(shí)例代碼

 更新時(shí)間:2025年08月18日 09:08:02   作者:學(xué)堂在線  
MySQL的配置文件是服務(wù)器運(yùn)行的重要組成部分,用于設(shè)置服務(wù)器操作的各種參數(shù),下面這篇文章主要介紹了MySQL配置文件的相關(guān)資料,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下

前言

MySQL 的配置文件(通常是 my.cnfmy.ini)是控制 MySQL 服務(wù)器行為的重要文件。不同操作系統(tǒng)的配置文件位置可能不同:

  • Linux/Unix/etc/my.cnf、/etc/mysql/my.cnf/usr/local/mysql/etc/my.cnf~/.my.cnf
  • WindowsC:\ProgramData\MySQL\MySQL Server X.Y\my.ini(具體路徑取決于安裝版本)

一、配置文件結(jié)構(gòu)

配置文件由多個(gè) section(分組) 組成,每個(gè) section 對(duì)應(yīng)不同的組件或客戶端工具。常見(jiàn) section 如下:

1.[mysqld]

MySQL 服務(wù)器核心配置(必填)。

[mysqld]
# 基礎(chǔ)配置
port = 3306              # 監(jiān)聽(tīng)端口(默認(rèn)3306)
datadir = /var/lib/mysql # 數(shù)據(jù)存儲(chǔ)目錄
socket = /tmp/mysql.sock # Unix socket 文件路徑
user = mysql             # 運(yùn)行MySQL的系統(tǒng)用戶

# 字符集配置
character-set-server = utf8mb4  # 服務(wù)器默認(rèn)字符集
collation-server = utf8mb4_unicode_ci  # 默認(rèn)排序規(guī)則

# 日志配置
log-error = /var/log/mysql/error.log  # 錯(cuò)誤日志路徑
slow_query_log = 1                    # 開(kāi)啟慢查詢(xún)?nèi)罩?
slow_query_log_file = /var/log/mysql/slow.log
long_query_time = 2                   # 慢查詢(xún)閾值(秒)

# 內(nèi)存與性能
innodb_buffer_pool_size = 1G          # InnoDB緩沖池大小(建議設(shè)為物理內(nèi)存的50-80%)
innodb_log_file_size = 256M           # InnoDB日志文件大小
max_connections = 200                 # 最大并發(fā)連接數(shù)
thread_cache_size = 10                # 線程緩存數(shù)量

# 安全相關(guān)
skip_name_resolve = 1                 # 禁用DNS反向解析(提升連接速度)
secure_file_priv = /var/lib/mysql-files  # 限制文件導(dǎo)入導(dǎo)出路徑

2.[client]

客戶端工具(如 mysql 命令行)的默認(rèn)配置。

[client]
port = 3306
socket = /tmp/mysql.sock
default-character-set = utf8mb4

3.[mysql]

mysql 命令行客戶端的配置。

[mysql]
auto-rehash           # 啟用自動(dòng)補(bǔ)全
prompt = "\\u@\\h:\\d> "  # 自定義提示符(用戶@主機(jī):數(shù)據(jù)庫(kù))

4.[mysqldump]

備份工具 mysqldump 的配置。

[mysqldump]
quick                  # 逐行導(dǎo)出數(shù)據(jù)(減少內(nèi)存占用)
max_allowed_packet = 256M  # 最大數(shù)據(jù)包大小

二、關(guān)鍵配置項(xiàng)詳解

1.內(nèi)存與性能優(yōu)化

  • innodb_buffer_pool_size
    InnoDB 引擎的核心緩存,存儲(chǔ)數(shù)據(jù)和索引。建議設(shè)置為物理內(nèi)存的 50-80%

  • innodb_flush_log_at_trx_commit
    控制事務(wù)日志刷新策略:

    • 0:每秒寫(xiě)入日志并刷新到磁盤(pán)(性能最佳,可能丟失1秒數(shù)據(jù))。
    • 1:每次事務(wù)提交都寫(xiě)入并刷新(最安全,性能最低)。
    • 2:每次提交寫(xiě)入日志,但每秒刷新到磁盤(pán)(折中方案)。
  • key_buffer_size
    MyISAM 表的索引緩存大?。ㄈ羰褂?MyISAM 表需調(diào)整)。

2.連接管理

  • max_connections
    最大并發(fā)連接數(shù)。需根據(jù)應(yīng)用需求調(diào)整,過(guò)高可能導(dǎo)致內(nèi)存耗盡。

  • wait_timeoutinteractive_timeout
    非交互式和交互式連接的空閑超時(shí)時(shí)間(默認(rèn)28800秒=8小時(shí))。

3.二進(jìn)制日志(主從復(fù)制)

server-id = 1                   # 服務(wù)器唯一ID(主從不能重復(fù))
log_bin = /var/log/mysql/mysql-bin.log  # 開(kāi)啟二進(jìn)制日志
expire_logs_days = 7            # 日志保留天數(shù)
binlog_format = ROW             # 推薦使用ROW格式(數(shù)據(jù)一致性更強(qiáng))

4.查詢(xún)緩存(MySQL 8.0已廢棄)

query_cache_type = 0            # 關(guān)閉查詢(xún)緩存(8.0已移除該功能)

5.其他重要配置

  • tmp_table_sizemax_heap_table_size
    控制內(nèi)存臨時(shí)表的最大大小,超出后會(huì)轉(zhuǎn)為磁盤(pán)表。

  • sql_mode
    定義 SQL 嚴(yán)格模式,例如:

    sql_mode = STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION
    

三、配置文件示例

[mysqld]
datadir = /var/lib/mysql
socket = /var/lib/mysql/mysql.sock
port = 3306

# 字符集
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci

# InnoDB配置
innodb_buffer_pool_size = 2G
innodb_log_file_size = 512M
innodb_flush_log_at_trx_commit = 2

# 連接管理
max_connections = 300
thread_cache_size = 20
wait_timeout = 600

# 日志
log-error = /var/log/mysql/error.log
slow_query_log = 1
slow_query_log_file = /var/log/mysql/slow.log
long_query_time = 1

# 安全
skip_name_resolve = 1
secure_file_priv = /var/lib/mysql-files

[client]
default-character-set = utf8mb4

四、注意事項(xiàng)

  1. 修改配置后需重啟 MySQL
    sudo systemctl restart mysql   # Linux
    
  2. 驗(yàn)證配置
    通過(guò) SHOW VARIABLES LIKE 'variable_name'; 確認(rèn)配置生效。
  3. 版本差異
    MySQL 不同版本(如 5.7 vs 8.0)的默認(rèn)配置或參數(shù)可能不同,需參考官方文檔。

通過(guò)合理配置,可以顯著優(yōu)化 MySQL 的性能和穩(wěn)定性!

到此這篇關(guān)于MySQL配置文件詳解的文章就介紹到這了,更多相關(guān)MySQL配置文件內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論