您的位置:首页 > 数据库 > MySQL

三种修改mysql默认最大连接数的要领

2013-04-10 22:51 441 查看
MYSQL数据库安装完成后,默认最大连接数是100,通常流量稍微大一点的论坛或站点这个连接数是远远不够的,添加默认MYSQL连接数的要领有两个

    要领一:进入MYSQL安装目录 打开MYSQL配置文件 my.ini 或 my.cnf查找 max_connections=100   修改为 max_connections=1000 服务里重起MYSQL即可

    要领二:MySQL的最大连接数默认是100客户端登录:mysql -uusername -ppassword

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

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

    显示当前状态:mysql> show status

    退出客户端:mysql> exit

    查看当前最大连接数:mysqladmin -uusername -ppassword variables

    要领三:以centos 4.4 下面的mysql 5.0.33 手工编译版本为例表明:

    vi /usr/local/mysql/bin/mysqld_safe

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

    -O max_connections=1500

    详细一点就是下面的位置:

    用红字特别表明:

    then $NOHUP_NICENESS $ledir/$MYSQLD

    $defaults --basedir=$MY_BASEDIR_VERSION

    --datadir=$DATADIR $USER_OPTION

    --pid-file=$pid_file

    --skip-external-locking

    -O max_connections=1500

    >> $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=1500 >>

    $err_log 2>&1"

    保存。

    # service mysqld restart

    # /usr/local/mysql/bin/mysqladmin -uroot -p variables

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

    max_connections 1500 即新改动已经生效。

    还有一种要领,

    修改原代码:

    解开MySQL的原代码,进入里面的sql目录修改mysqld.cc找到下面一行:

    {"max_connections", OPT_MAX_CONNECTIONS,

    "The number of simultaneous clients allowed.", (gptr*) &max_connections,

    (gptr*) &max_connections, 0, GET_ULONG, REQUIRED_ARG, 100, 1, 16384, 0, 1,

    0},

    把它改为:

    {"max_connections", OPT_MAX_CONNECTIONS,

    "The number of simultaneous clients allowed.", (gptr*) &max_connections,

    (gptr*) &max_connections, 0, GET_ULONG, REQUIRED_ARG, 1500, 1, 16384, 0, 1,

    0},

    存盘退出,然后./configure ;make;make install能够取得同样的成效。

查看连接数方法,在phpmyadmin里的sql输入

show status like '%max%';

当前最大连接数

show variables like '%max%';

最大连接数

一.如果使用的是默认的my.cnf那就这样操作

vi /etc/my.cnf

[mysqld]

set-variable=max_connections=1000

set-variable=max_user_connections=500

set-variable=wait_timeout=200

//max_connections设置最大连接数为1000

//max_user_connections设置每用户最大连接数为500

//wait_timeout表示200秒后将关闭空闲(IDLE)的连接,但是对正在工作的连接不影响。

然后保存退出,重启mysql服务后查看连接数。

可以在phpmyadmin里的sql输入查询语句,或者输入/mysql安装路径/bin/mysqladmin -uroot -p variables "查看连接数"

max_connections这个就是最大连接数

二.如果各位大侠内存够大够猛的话(超过4G的话)可以这样操作

cp /usr/local/mysql/share/mysql/my-innodb-heavy-4G.cnf /etc/my.cnf

然后更改my.cnf里的max_connections = 100这个数值可以调高!!!

然后查看连接数更改情况
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: