MySQL8 CentOS版本:從安裝到優(yōu)化的完整實(shí)踐
環(huán)境準(zhǔn)備與安裝流程
在CentOS 7/8系統(tǒng)上部署MySQL 8前,需確保系統(tǒng)已更新至最新版本。通過(guò)以下命令添加官方倉(cāng)庫(kù)并執(zhí)行安裝:
sudo dnf install @mysql
sudo systemctl start mysqld
sudo systemctl enable mysqld
安裝完成后運(yùn)行sudo mysql_secure_installation
進(jìn)行基礎(chǔ)安全配置,包括設(shè)置root密碼、移除匿名用戶(hù)等操作。
核心配置與安全加固
修改/etc/my.cnf
配置文件實(shí)現(xiàn)定制化需求:
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci
default_authentication_plugin=mysql_native_password
通過(guò)創(chuàng)建獨(dú)立數(shù)據(jù)庫(kù)用戶(hù)并分配最小權(quán)限原則增強(qiáng)安全性:
CREATE USER 'webuser'@'%' IDENTIFIED BY 'StrongPassword!';
GRANT SELECT, INSERT ON webdb.* TO 'webuser'@'%';
性能調(diào)優(yōu)策略
- 調(diào)整
innodb_buffer_pool_size
為系統(tǒng)內(nèi)存的70%-80% - 啟用查詢(xún)緩存并設(shè)置
query_cache_type=1
- 配置
max_connections
根據(jù)實(shí)際負(fù)載動(dòng)態(tài)調(diào)整
使用EXPLAIN
分析慢查詢(xún),結(jié)合mysqltuner
工具進(jìn)行深度優(yōu)化。
故障排查與維護(hù)
常見(jiàn)問(wèn)題解決方案:
問(wèn)題現(xiàn)象 | 解決方式 |
---|---|
啟動(dòng)失敗 | 檢查selinux 狀態(tài)及端口占用 |
連接數(shù)溢出 | 優(yōu)化wait_timeout 參數(shù)配置 |
字符集異常 | 驗(yàn)證表級(jí)和字段級(jí)編碼設(shè)置 |
版本升級(jí)注意事項(xiàng)
從MySQL 5.7升級(jí)至8.0時(shí)需特別注意:
- 備份所有數(shù)據(jù)庫(kù)文件
- 檢查存儲(chǔ)引擎兼容性
- 測(cè)試認(rèn)證插件變更影響