程序连接 mysql 报错:Too many connections, 解决方法是修改 mysql 里的连接数。
show variables like "%conn%"; 查看 max_connections 最大连接数,max_user_connections 单用户最大连接数。
进入 docker 内部的 bash 命令可执行界面:
docker ps 查看 mysql 镜像
docker exec -it 镜像的containerID /bin/bash 进入镜像内部可执行 bash 命令界面
永久修改方案,重启后仍有效:
vim /etc/mysql/mysql.conf.d/mysqld.cnf 如果没有 vim 命令,则安装 vim: 第一步:apt-get update 第二步:apt-get install vim
max_connections=16384 -- 设置该 DB 最大连接数
max_user_connections=2000 -- 设置单用户最大连接数
临时修改方案,重启后失效:
在任意连接到 mysql 的 session 会话里,或者 navicat 界面中执行以下命令都可以。进入 docker 以后,执行:mysql -u root -p 然后回车,之后按提示输入 mysql 密码。
set GLOBAL max_connections=1020; -- 设置该 DB 最大连接数为 1020
set GLOBAL max_user_connections = 1000; -- 设置单用户最大连接数为 1000
感谢这位老兄:
docker容器时,有时候里边没有安装vim,提示vi: command not found
end