正确修改MySQL最大连接数的三种好用方案

以下的文章主要介绍的是正确修改MySQL最大连接数的三种好用方案,我们大家都知道MySQL数据库在安装完之后,默认的MySQL数据库,其最大连接数为100,一般流量稍微大一点的论坛或网站这个连接数是远远不够的,增加默认MySQL连接数的方法有两个。
方法一:
进入MySQL安装目录 打开MySQL配置文件 my.ini 或 my.cnf查找 max_connections=100 修改为 max_connections=1000 服务里重起MySQL即可
方法二:
MySQL最大连接数默认是100客户端登录:
MySQL -uusername -ppassword 
复制代码

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

MySQL>SHOW VARIABLES;

MySQL>SHOW VARIABLES like 'max_%';

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

如何查询mysql的已连接数

MySQL>show full processlist;

显示当前状态:
MySQL> show status 
复制代码

退出客户端:MySQL> exit
查看当前MySQL最大连接数: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},  
复制代码


存盘退出,然后./con**ure ;make;make install可以获得同样的效果。以上的相关内容就是对修改MySQL最大连接数的3种方法的介绍,望你能有所收获。


原文出自【比特网】,转载请保留原文链接:http://bbs.chinabyte.com/thread-373798-1-1.html

如何查询mysql的已连接数??


请问如何查询mysqlserver当前已经连了多少用户??我用的是windows操作系统,server安装在别的机器上,我是客户端想获取server的已连接用户数。请告知。。


>show full processlist;

D:MySQLbin>mysqladmin processlist -uroot -pgene

不好意思,我描述的有问题。。我要得到的是已连接server的客户端的个数。。用这个show full processlist;语句得到了十几条记录,而且记录有重复的,就像你上面的那样,同一个用户登录它显示有两条记录,而我想得到的是1.
这个命令看到host
对host去冗余就是你要的了


查看MySQL连接数方法2010-06-09 13:031、查看当前所有连接的详细资料:

MySQLadmin -uroot -proot processlist 
D:MySQLin>MySQLadmin -uroot -proot processlist 
+-----+------+----------------+---------+---------+------+-------+------------------+ 
| Id | User | Host | db | Command | Time | State | Info | 
+-----+------+----------------+---------+---------+------+-------+------------------+ 
| 591 | root | localhost:3544 | bbs | Sleep | 25 | | | 
| 701 | root | localhost:3761 | | uery | 0 | | show processlist | 
+-----+------+----------------+---------+---------+------+-------+------------------+ 
2、只查看当前MySQL连接数(Threads就是连接数.):

MySQLadmin -uroot -proot status 
D:MySQLin>MySQLadmin -uroot -proot status 
Uptime: 2102 Threads: 3 Questions: 15531 Slow queries: 0 Opens: 0 Flush tab 
les: 1 Open tables: 61 Queries per second avg: 7.389 
3、修改MySQL最大MySQL连接数:

打开my.ini,修改max_connections=100(默认为100)。

原文地址:https://www.cnblogs.com/jthb/p/4387485.html