这段时间服务器崩溃2次,一直没有找到原因,今天看到论坛发出的错误信息邮件,想起可能是mysql的默认连接数引起的问题,一查果然,老天,默认连接数才100, 怎么够呀,在网上找了半天资料,有说修改my.cnf的,有说修改safe_mysqld,试了,前者无用,后者文件找不到:)原来是以前的版本跟现在的版本有所不同。 言归正传。我以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可以获得同样的效果。mysql数据库的连接Linux下MySQL的安装与使用相关资讯 mysql Linux
- Linux 即将 25 岁:足够伟大 却不 (01月01日)
- Linux 这么棒是因为开源? (08/28/2015 09:21:02)
- FreeBSD 和 Linux 有什么不同? (07/31/2015 09:15:06)
| - 盘点全球“国家级” Linux 项目 (09/25/2015 06:11:28)
- 庆祝 Linux 24 岁生日! (08/26/2015 06:13:36)
- 【观点】离了Linux,我就活不了! (10/31/2013 19:39:56)
|
本文评论 查看全部评论 (0)