一  错误编号:2003

1.1 问题分析:无法连接到 mysql 服务器,可能的情况为:

1、mysql 服务没有启动,一般是在异常的情况下 mysql 无法启动导致的,比如无可用的磁盘空间,my.ini 里 mysql 的 basedir 路径设置错误等;

2、mysql 服务器资源紧张,导致无法连接。

1.2 解决方法:

1、如果你是虚拟主机用户(购买的空间),则联系空间商检查 mysql 是否正常启动,并确认 mysql 的配置信息(是否为 localhost);

2、如果你是独立主机用户(拥有管理主机权限),则按下面步骤检查:

1)检查是否启动了 mysql 服务。

如: windows系统的话,右键点击我的电脑,单击管理,在服务和应用程序中找到mysql 服务,看是否是已启动的状态。

二 mysql出现10061错误解决办法
如果出现"error 2003: can't connect to mysql server on 'localhost'(10061)", 说明你的mysql还没有启动。

解决办法:(windows系统)在服务中,启动mysql服务

三 can't connect to mysql server on 'localhost' (10055)

解决方案:

1 建议修改最大连接数,或者把 mysql_connect() 方法都改成了mysql_pconnect() 方法, 

2 治标,封锁这些ip,一个ip连接大于3的就有点不正常, 

3 治本,修改站点程序,严禁刷新太快!

4. 链接数的修改:此错误与一个注册表键值tcptimedwaitdelay有关。减小windows中tcptimedwaitdelay时间可解决此类问题,

默认情况下为240(未设置的情况下也是这个数值)。此项设置需要到注册表如下位置进行设置:

[hkey_local_machine][system] [currentcontrolset] [services] [tcpip] [parameters]

[tcptimedwaitdelay]如果注册表中没有tcptimedwaitdelay这个项目,

请增加这个项目,并设置为双字节(dword)类型。数值设置为30 60 之间即可。

四 can't connect to mysql server on 'localhost' (10060)

4.1 服务器端的操作系统是windowsxp sp2,自带的防火墙中打开3306(mysql的默认端口)端口

4.2 防火墙禁止3306端口,以iptable为例
vi /etc/sysconfig/iptables
-a rh-firewall-1-input -m state --state new -m tcp -p tcp --dport 3306-j

4.3 accept 
service iptables restart

4.4 iptables设置
1) 重启后生效 
开启: chkconfig iptables on 
关闭: chkconfig iptables off

2) 即时生效,重启后失效 
开启: service iptables start 
关闭: service iptables stop

示例一 MySQL错误:Can't connect to MySQL server (10060)


当远程连接MySQL数据库的时候显示Can't connect to MySQL server (10060),我们从以下几个方面入手,找出错误的原因:

1.网络不通。

检查能不能ping通。

2.防火墙设置。

防火墙是否放过mysql的进程,是否屏蔽了mysql的3306端口。

3.mysql的账户设置。

mysql账户是否不允许远程连接。如果无法连接可以尝试以下方法:


也可以通过修改表来实现远程:


其实错误的原因也不外乎以上几个方面,相信按照上面的思路找出原因,定能将问题解决掉。


Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐