修改資料庫是一種風險較高的行為,在進行修改之前,建議使用開發測試資料庫進行演示,並備份相關資料。以防資料庫誤操作,遺失資料等等 。
修改MySQL的前提條件:
1、有Linux使用者的管理員權限帳號,需要對MySQL安裝的設定問卷進行修改;
2、 MySQL資料庫的管理帳號。
3、如果有運維,與維運和開發負責人員商量修改,資料是大事,以防資料遺失,做好資料的備份。
# mysql -uroot -p
輸入指令後,提示輸入root使用者密碼,輸入密碼後,成功登入資料庫。
登入MySQL資料庫
mysql> show variables like 'max_connections';
如下圖,MySQL的最大連線數才151 ,稍微多開幾個微服務,基本上都會報資料庫連線數過多的異常。
查看資料庫的最大連線數
找到MySQL的設定檔並且修改: /etc/mysql/mysql.conf.d/mysqld.cnf
# view /etc/mysql/mysql.conf.d/mysqld.cnf
修改設定檔中的最大連線數,max_connections = 2000,修改完儲存設定退出編輯狀態。
[mysql] max_connections = 2000
修改設定檔中的最大連線數
使用指令查詢系統的檔案限制
# 查询文件限制 $ ulimit -n 1024
如果查看的系統檔案限制是65535,表示系統已經修改過了,不需要再修改。
5.1、在/etc/security/limits.conf最後增加如下兩行記錄,編輯完儲存配置
# 编辑系统文件配置文件 $ view /etc/security/limits.conf # 在/etc/security/limits.conf最后增加如下两行记录 * hard nofile 65535 * soft nofile 65535
最後增加如下兩行記錄
5.2、編輯/etc/pam. d/common-session,加入一行 session required pam_limits.so
# 编辑/etc/pam.d/common-session, # 加入一行 session required pam_limits.so $ view /etc/pam.d/common-session
編輯設定檔
# 5.3、編輯/etc/profile#,加入ulimit -SHn 65535,
#執行scource
指令使組態生效,再次檢視系統檔案限制
# 编辑/etc/profile,加入ulimit -SHn 65535 # 编辑完保存 $ view /etc/profile # 执行scource 命令使配置生效,确认修改是否成功 $ source /etc/profile # 再次查看系统limit限制,看配置文件是否生效 $ ulimit -n 65535##系統設定檔已修改成功
6、修改mysql設定
查找mysql.service# 啟動檔案
$ systemctl status mysql.service ● mysql.service - MySQL Community Server Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled) Active: active (running) since Wed 2018-12-19 23:53:28 CST; 16min ago Process: 25857 ExecStartPost=/usr/share/mysql/mysql-systemd-start post (code=exited, status=0/SUCCESS) Process: 25843 ExecStartPre=/usr/share/mysql/mysql-systemd-start pre (code=exited, status=0/SUCCESS) Main PID: 25856 (mysqld) Tasks: 28 (limit: 4915) Memory: 185.9M CPU: 1.577s CGroup: /system.slice/mysql.service └─25856 /usr/sbin/mysqld
進入目錄
/etc/systemd/system/ multi-user.target.wants;
sudo vim mysql.service,在[Service] 最後加入:
LimitNOFILE=65535 LimitNPROC=65535#########修改mysql的啟動設定檔######7、執行下方指令使修改生效######生效剛才修改的設定文件,重新啟動MySQL服務。 ###
$ systemctl daemon-reload $ systemctl restart mysql.service###8、登入mysql,使用 show variables like "%max_connections%"; 查看最大連線數,這時發現已改為2000。 ############
以上是MySQL最大連線數限制如何修改的詳細內容。更多資訊請關注PHP中文網其他相關文章!