CentOS7安裝MySQL5.7並進行優化配置

一、安裝MySQL5.7

1、在CentOS7上執行以下命令:

yum install -y wget
wget https://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
yum localinstall -y mysql57-community-release-el7-10.noarch.rpm
yum install -y mysql-server

2、啟動MySQL並設置MySQL開機啟動:

systemctl start mysqld.service
systemctl enable mysqld.service

二、修改MySQL資料庫字符集

默認情況下MySQL的字符集為Latin1,因此需要將MySQL的字符集修改為utf8mb4,執行以下命令:

vim /etc/my.cnf

在[mysqld]標籤下添加:

collation-server = utf8mb4_unicode_ci
character-set-server = utf8mb4
init_connect='SET NAMES utf8mb4'

保存並退出後重啟MySQL服務:

systemctl restart mysqld.service

三、MySQL優化配置

1. 關閉不必要的服務

在MySQL安裝完成後,MySQL默認會啟動多個服務,其中一些服務並不是必須的,因此可以關閉這些不必要的服務。

vim /etc/my.cnf

在[mysqld]標籤中添加以下內容,並保存:

#禁用mysql的DNS解析
skip-name-resolve
#關閉query cache 開啟它後,會導致高並發性能問題:
query_cache_type=0
query_cache_size=0
#在事務提交前會執行commit
innodb_flush_log_at_trx_commit = 2
#線程池插件在生產環境上一定要使用
plugin-load=thread_pool.so

重啟MySQL服務:

systemctl restart mysqld.service

2. 調整MySQL緩衝區大小

在MySQL中,緩存區大小對於性能的影響非常明顯。max_connections值越高,分配給每個線程緩存區的內存就越小,因此需要調整緩衝區大小。

執行以下命令:

vim /etc/my.cnf

在[mysqld]標籤中添加以下內容:

#緩衝區大小設置
key_buffer_size=512M
max_connections=1000
innodb_buffer_pool_size=2G
innodb_log_buffer_size=32M
innodb_flush_log_at_trx_commit=2

保存並退出後重啟MySQL服務:

systemctl restart mysqld.service

3. 修改MySQL的打開文件句柄數量

在MySQL執行過程中,打開的文件數量會隨著連接數的增加而增加,因此需要調整MySQL的打開文件句柄數量。

執行以下命令:

vim /etc/security/limits.conf

在文件末尾添加以下內容:

* soft nofile 655350
* hard nofile 655350
mysql soft nofile 655350
mysql hard nofile 655350

保存並退出後重啟MySQL服務:

systemctl restart mysqld.service

4. 修改MySQL的連接超時時間

在MySQL中,連接超時時間默認為8小時,需要根據實際情況調整。

執行以下命令:

vim /etc/my.cnf

在[mysqld]標籤中添加以下內容:

#連接超時時間設置
wait_timeout=300
interactive_timeout = 300

保存並退出後重啟MySQL服務:

systemctl restart mysqld.service

四、總結

通過以上步驟,您已經成功地在CentOS7上安裝了MySQL5.7並進行了優化配置,使得MySQL的性能得到了進一步提升。

原創文章,作者:SPQPM,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/316681.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
SPQPM的頭像SPQPM
上一篇 2025-01-09 12:15
下一篇 2025-01-09 12:15

相關推薦

發表回復

登錄後才能評論