can t connect to mysql server on 'localhost'解决方法

本文详细解析了MySQL连接错误2003和10061的原因,包括服务未启动、资源紧张、防火墙设置不当等,并提供了重启服务、调整注册表设置、开放防火墙端口等解决方案。
本文转载自: https://www.cnblogs.com/zhaohonghao-blog/p/6201664.html 作者:zhaohonghao-blog 转载请注明该声明。

源:http://www.111cn.net/database/mysql/37700.htm

先重启服务器可解决大部分问题

 

错误编号:2003

问题分析:

无法连接到 mysql 服务器,可能的情况为:

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

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

解决方法

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

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

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

windows 主机的话,右键点击我的电脑,单击管理,在服务和应用程序中找到


mysql 服务,看是否是已启动的状态。


mysql出现10061错误解决办法
如果出现"error 2003: can't connect to mysql server on 'localhost'

(10061)", 说明你的mysql还没有启动。

解决办法:在服务中,启动mysql服务


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

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

mysql_pconnect() 方法, 
2。治标,封锁这些ip,一个ip连接大于3的就有点不正常,

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

链接数的修改:

此错误与一个注册表键值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)

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

口)端口

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

accept 
service iptables restart

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

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

### 三级标题:问题分析与解决方案 MySQL 报错 `ERROR 1524 (HY000): Plugin 'mysql_native_password' is not loaded` 通常表示该插件未被加载或不可用,常见于 MySQL 8.0 及以上版本中。MySQL 8.0 默认使用 `caching_sha2_password` 作为默认认证插件,而 `mysql_native_password` 插件可能未被激活或加载,导致执行 `ALTER USER` 命令时失败[^1]。 如果用户无法连接到本地 MySQL 服务器,可能需要通过以下方式修复插件状态并重新配置 MySQL 服务。首先,使用具有管理员权限的账户登录 MySQL,执行以下命令查看插件状态: ```sql SHOW PLUGINS; ``` 若 `mysql_native_password` 插件状态为 `DISABLED`,则需要修改 MySQL 配置文件(如 `my.ini` 或 `my.cnf`),在文件末尾添加以下配置: ```ini mysql_native_password=ON ``` 保存文件后,重启 MySQL 服务以应用更改。例如,在 Windows 系统中,可以使用以下命令重启服务: ```bash net stop mysql84 net start mysql84 ``` 重启完成后,再次登录 MySQL 并检查插件状态。若状态为 `ACTIVE`,则可以使用以下命令修改用户密码插件: ```sql ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'your_password'; FLUSH PRIVILEGES; ``` 如果仍然无法加载 `mysql_native_password` 插件,可以尝试使用默认的 `caching_sha2_password` 插件进行用户认证: ```sql ALTER USER 'root'@'localhost' IDENTIFIED WITH caching_sha2_password BY 'your_password'; FLUSH PRIVILEGES; ``` 此外,检查 MySQL 错误日志文件,查看是否有插件加载失败的详细信息,并根据日志提示进行修复。日志文件通常位于 MySQL 数据目录下的 `error.log` 文件中[^4]。 ### 三级标题:相关问题与扩展 如果用户希望确认当前用户的认证方式,可以执行以下 SQL 查询: ```sql SELECT User, Host, plugin FROM mysql.user WHERE User = 'root' AND Host = 'localhost'; ``` 该查询将显示 `root@localhost` 用户当前使用的认证插件类型。如果希望切换回 `caching_sha2_password`,可以使用以下命令: ```sql ALTER USER 'root'@'localhost' IDENTIFIED WITH caching_sha2_password BY 'your_password'; FLUSH PRIVILEGES; ``` 这种方式避免了对 `mysql_native_password` 插件的依赖,并确保使用 MySQL 8.0 的默认认证机制,提高安全性[^4]。 ### 三级标题:总结与建议 MySQL 8.0 中 `mysql_native_password` 插件未加载的问题可以通过修改配置文件并重启服务来解决。若插件状态为 `DISABLED`,可在 `my.ini` 中启用插件并重启 MySQL 服务。如果插件加载失败,应检查 MySQL 错误日志以获取详细信息。此外,也可以使用默认的 `caching_sha2_password` 插件来避免依赖 `mysql_native_password`,提高兼容性和安全性。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值