Hedisql: Can't connect to MySQL server on '127.0.0.1'(10061)

本文介绍了解决MySQL5.7无法通过Hedisql连接的问题。通过重新配置MySQLInstaller-Community,更改服务名称,成功恢复数据库连接。并提供了解决服务列表中残留旧服务名的方法。

本文系作者原创,转载请注明出处,谢谢!

 

刚装完MySQL 5.7没几天,今天打开Hedisql连接数据库突然报错:Can't connect to MySQL server on '127.0.0.1'(10061)。见图

我以为是自己用金山卫士优化开机的时候把MySQl的一些服务给禁止了导致的问题。然后依次点击"控制面板"-->>"系统和安全"->>"管理工具"->>"服务",进入服务列表,找到MYSQL57服务这一项:

上面显示是"启动",和其他服务"已启动"不一样。有点蹊跷,双击点进去看,

发现,"启动"、"停止" 、"暂停"、"恢复"四个按钮都不可用。这下子想重启服务也没办法了。开始动了卸载重装的念头,打开"控制面板"->>"程序"->>"程序和功能",准备卸载时,注意到了列表里有一项"MySQL Installer - Community",右击看到有个"更改"选项,想到类似office这类软件是可以在不卸载的情况下重新配置某些功能的,于是点开了"更改"选项。

 但是报错接踵而来,提示访问C盘ProgramData下的MySQL文件夹下MySQL Installer for Windows被拒绝。

我想可能是文件夹权限的问题,于是右击C盘ProgramData下的MySQL文件夹,选择“属性”,把“只读”去掉勾需选,点击“应用”。然后重新运行MySQL Installer - Community的更改

点击"MySQL Server"右侧的"Reconfigure",接着跟第一次安装操作一样,重新配置MySQL Server。中间会碰到让输入当前数据库password以进行下一步,准确输入即可。然后会碰到一个提示要求“重新指定MySQL service在这台计算机上的服务名称,不能用第一次安装时的服务名,旁边会给出当前的服务名告诉你这个名称不能再用。比如,我第一次安装时服务名是MYSQL57,那这次重新配置我就得重新起个名字。

重新配置完,再运行Hedisql就可以连接MySQL了!

Tips:如果此时你再查看"服务"列表,会发现刚刚指定名称的服务已经出现了。并且第一次安装时的服务名竟然还在,如果你嫌它碍眼,可以按下面的步骤把这个服务删除。

在开始菜单“附件”里找到“命令提示符”,右击选中“以管理员身份运行”,然后在cmd窗口输入sc delete 服务名(sc delete 服务名 三者中间有空格),敲下回车就会提示该服务已删除。重启电脑后在“服务”列表里就不会有第一次的服务名了。

 

Finally,我在处理这个问题的时候还踩过不少坑,遇见过许多其他报错。上网搜了很多办法都无济于事。

简单列举一个:

这个问题很多人都碰到过,我试了网上的不少办法都不行。

所以最后还是建议 试试MySQL自带的重新配置功能:MySQL Installer - Community 

这样就可以在不卸载的情况下接着使用先前的数据库和表等资源。

### 检查 MySQL 服务是否运行 在 Mac 系统中,首先需要确认 MySQL 服务是否已经启动。可以通过以下步骤进行检查: - 打开“系统偏好设置”,在底部找到 MySQL 图标并点击进入。 - 查看 MySQL 服务状态,如果未运行,请点击“Start MySQL Server”启动服务。 如果通过系统偏好设置无法启动服务,可以尝试使用终端命令来启动: ```bash sudo /usr/local/mysql/support-files/mysql.server start ``` ### 检查 MySQL 配置文件中的绑定地址 确保 MySQL 配置文件中的 `bind-address` 设置为 `127.0.0.1` 或 `0.0.0.0`,以允许本地或远程连接。可以通过编辑配置文件来修改: ```bash sudo nano /etc/my.cnf ``` 在 `[mysqld]` 部分添加或修改以下行: ```ini bind-address = 0.0.0.0 ``` 保存文件并重启 MySQL 服务: ```bash sudo /usr/local/mysql/support-files/mysql.server restart ``` ### 检查防火墙设置 确保防火墙没有阻止 MySQL连接。可以通过暂时关闭防火墙来测试连接是否正常: ```bash sudo ufw disable ``` 如果关闭防火墙后可以正常连接,则需要将 MySQL 添加到防火墙例外列表中。 ### 检查 MySQL 最大连接数 如果 MySQL 服务器达到了最大连接数限制,也会导致连接被拒绝。可以通过以下命令登录 MySQL 并检查当前的最大连接数设置: ```bash mysql -u root -p ``` 在 MySQL 提示符下输入以下命令: ```sql SHOW VARIABLES LIKE 'max_connections'; ``` 如果需要增加最大连接数,可以在 MySQL 配置文件中进行调整: ```ini [mysqld] max_connections = 200 ``` 保存文件并重启 MySQL 服务。 ### 重置 MySQL 密码 如果怀疑密码设置有问题,可以尝试重置 MySQL 密码。首先停止 MySQL 服务: ```bash sudo /usr/local/mysql/support-files/mysql.server stop ``` 然后以跳过授权表的方式启动 MySQL: ```bash cd /usr/local/mysql/bin sudo ./mysqld_safe --skip-grant-tables ``` 在另一个终端窗口中,连接到 MySQL 并重置密码: ```bash mysql -u root ``` 在 MySQL 提示符下输入以下命令: ```sql FLUSH PRIVILEGES; ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password'; ``` 其中 `new_password` 是新的密码。 ### 重新安装 MySQL 如果以上方法都无法解决问题,可以考虑重新安装 MySQL。首先卸载现有的 MySQL 安装: ```bash sudo rm -rf /usr/local/mysql sudo rm -rf /Library/StartupItems/MySQLCOM sudo rm -rf /Library/PreferencePanes/My* sudo rm -rf /Library/Receipts/mysql* sudo rm -rf /Library/Receipts/MySQL* sudo rm -rf /var/db/receipts/com.mysql.* ``` 然后从 MySQL 官方网站下载最新版本的安装包并重新安装。 ###
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值