mysql最大连接数默认只有100,当很多用户访问带有数据库的站点如论坛时,会造成mysql服务CPU占用率上升,并无法提供服务

问题
mysql最大连接数默认只有100,当很多用户访问带有数据库的站点如论坛时,会造成mysql服务CPU占用率上升,并无法提供服务

解决方案
为mysql增加最大连接数的方法:

--------------------------------------
Linux:

vi /etc/my.cnf

找到[mysqld]一段,加入如下一行:
set-variable=max_connections=500

注意:该参数必须加入[mysqld]配置段内,加入别的地方无效。

例如一个标准的my.cnf配置文件如下:
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
set-variable=max_connections=500

[mysql.server]
user=mysql
basedir=/var/lib

[safe_mysqld]
err-log=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

然后重新启动mysql服务即可。
/etc/init.d/mysqld restart


--------------------------------------
FreeBSD服务器:
vi /usr/local/bin/safe_mysqld
搜索100,修改成1024,如下内容:
$NOHUP_NICENESS $ledir/$MYSQLD $defaults --basedir=$MY_BASEDIR_VERSION --datadir=$DATADIR $USER_OPTION --pid-file=$pid_file --skip-locking -O max_connections=1024 >> $err_log
2>&1
else
eval "$NOHUP_NICENESS $ledir/$MYSQLD $defaults --basedir=$MY_BASEDIR_VERSION --datadir=$DATADIR $USER_OPTION --pid-file=$pid_file $args --skip-locking -O max_connections=1024 >> $err_log 2>&1"
保存退出,重启mysql
执行/usr/local/etc/rc.d/mysql-server.sh stop
/usr/local/etc/rc.d/mysql-server.sh start

上一篇:mysql数据库连接与锁查询


下一篇:Kruskal 找到最小生成树