分析原因一:Mysql的自动备份功能可能导致数据库在备份的时候先关闭服务,而在此启动的时候服务器不响应,
开始-运行-services.msc,打开windows服务找到mysql的服务并双击,点击恢复选项卡,第一次失败:默认是“不 *** 作”,改成”重新启动服务”。
在下方的“重新启动服务:分钟后”添上“0”表示如果服务意外终止则立即重启动。点击确定使设置生效。这时候你在任务管理器里结束mysql-nt进程,会发现结束不掉,不过要注意,这样mysql.exe是停不了的,如果要停必须把刚才修改的改回来.)
分析原因二,可能是mysql连接问题
修改mysql的最大连接数, 使用内存变量修改法修改mysql的最大连接数
步骤如下(同时适用windows和linux平台):
a、客户端登录mysql,输入用户名和密码’b、在mysql命令提示符下设置新的最大连接数为500:mysql>set global max_connections=500
c、显示当前运行的query:mysql>show processlist
d、显示当前mysql 系统参数状态:mysql>show status# k
e、退出客户端:mysql>exit’
查看当前最大连接数只需要通过在mysqladmin所在目录下执行以下命令:mysqladmin -username -password variables |find “max_con” 即可看到。也可以使用php教程myadmin里头的mysql参数列表查看最大连接数。
缺点:重启计算机或者mysql后最大连接数又会复位成初始值,需要重新设定。
2、修改my.ini或my.cnf文件法(需要重启mysql),可参考同目录下mysql的配置模板(小内存、大内存、超大内存). e windows系统下打开my.ini文件找到set-variable =max_connections=100这一行,改成需要设定的最大连接数,然后重启即可。
linux控制台下:
1、打开my.cnf文件:vi /etc/my.cnf
2 在[mysqld]段下修改max_connections的值为设定值。
注意:
可能大家安装的mysql来源和版本不同(windows下mysql+iis和php+apache+mysql套件最终安装结果几乎都不相同),my.ini文件的路径可能有些不同,my.ini可能还会保留一份在c:windows目录下需要同时修改
首先要找到问题的原因所在,然后一项一项排除。最简单省事的就是直接换一个版本的mysql,看看还挂不挂。不挂就OK了。
如果还是挂,你就一个数据库一个数据库的增加,增加到哪个数据库后开始挂了,说明是这个数据库或者访问这个数据库的程序的问题。
如果和数据库没关系,请尝试换一个电脑安装mysql,可以排除是否是当前电脑的环境有问题(比如软件、硬件、病毒、内存)等。
如果还有问题,请尝试设置mysql的参数,比如占用内存大小,连接数量最大值,数据库引擎等。
可能是连接数达到上限了。可以尝试的方法:1.修改mysql的配置文件,设置合适的 wait_timeout
#指定一个请求的最大连接时间,对于4GB左右内存的服务器可以设置为5-10。
wait_timeout = 10
2.清理tcp连接,这个方式比较麻烦,并且可能误杀其他进程。我的站上有一个windows 7下执行清理的python脚本可以试试
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)