Linux下修改mysql默认最大连接数

来源:互联网 发布:苏州科达java笔试题 编辑:程序博客网 时间:2024/06/05 14:33

MYSQL数据库安装完成后,默认最大连接数是100,一般流量稍微大一点的论坛或网站这个连接数是远远不够的,虽然通过连接池可以将连接数设置为固定的100,可是在下那BT同事将所有的连接池都设置成了100,话说我们小组有5个人……再话说,个人调试有必要设置那么高么……不过牢骚归牢骚,问题依然需要解决。

方法一:进入MYSQL安装目录 打开MYSQL配置文件 my.ini 或 my.cnf查找 max_connections=100   修改为 max_connections=1000 服务里重起MYSQL即可。此方法用于Windows下的mysql设置,简单方便。如果是Linux的话,请看下面。

方法二:MySQL的最大连接数默认是100

客户端登录:mysql -uroot -p

设置新的最大连接数为1000:mysql> set GLOBAL max_connections=1000

显示当前运行的Query:mysql> show processlist

显示当前状态:mysql> show status

退出客户端:mysql> exit

查看当前最大连接数:mysqladmin -uroot -p variables

这个办法治标不治本,重启服务以后最大连接数还是100。这个方法用于紧急扩充最大连接数用,不是长久之计。

方法三:以centos 5.4 下面的mysql 5.0.83 rpm版本为例说明:

找到/usr/bin/mysqld_safe编辑它,找到mysqld启动的那两行,在后面加上参数 :

-O max_connections=1000

用红字特别说明:

if test -z "$args"
  then
    $NOHUP_NICENESS $ledir/$MYSQLD $defaults --basedir=$MY_BASEDIR_VERSION --datadir=$DATADIR $USER_OPTION --pid-file=$pid_file --skip-external-locking -O max_connections=1000 >> $err_log 2>&1
  else
    eval "$NOHUP_NICENESS $ledir/$MYSQLD $defaults --basedir=$MY_BASEDIR_VERSION --datadir=$DATADIR $USER_OPTION --pid-file=$pid_file --skip-external-locking $args -O max_connections=1000 >> $err_log 2>&1"
  fi

这段代码很不好找,在下也无法说清楚它具体在哪个位置。不过建议从最后往前找会比较快。

重启mysql服务:# service mysql restart

查看当前最大连接数:# /usr/local/mysql/bin/mysqladmin -uroot -p variables

输入root数据库账号的密码后可看到

max_connections 1000 即新改动已经生效。

还有一种方法是修改原代码,在下没有试过,就不再多说了。

 

查看当前系统下mysql设置的最大连接数
[root@localhost ~]# /usr/bin/mysqladmin -uroot -p variables |grep max_connections


| max_connections                 | 100   //默认是100

[root@localhost ~]# nano /etc/my.cnf
编辑my.cnf在[mysqld]中加入:

下面两条中的一条具体那一条还没测试

max_connections=1000
set-variable=max_connections=1000


[root@localhost ~]# service mysqld restart //重启mysql