学习笔记(14)- 不能远程连接Ubuntu上的Mysql,报错:错误号码2003,can‘t connect to Mysql server on xxxx

遇到这个问题我一度认为是防火墙的问题,以为端口开放没有成功。直到干脆把防火墙关闭了,但是还是不能连接。

只能去请教百度了,看了半天,也尝试了半天,前前后后几个小时,真的头疼。直到看到以为大佬的博文,终于个给我解决了。(这里放上原文

1 进入mysql
mysql -uroot -p

2 使用mysql数据库
use mysql;

3 查看user表的信息。
select host,user from user;

4 更改root用户的host

update user set host ='%' where user='root';

5 给予root 用户所有权限
GRANT ALL ON *.* TO 'root'@'%';

6 刷新权限
FLUSH PRIVILEGES;

7 退出mysql
exit

8 修改配置文件
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf (注:这里有许多文章说是/etc/mysql/my.cnf,但是我的/etc/mysql/my.cnf里面并没有东西)

将文件中的bind-address=127.0.0.1注释掉,在这行语句前面加 # 即为注释
保存退出

也可以直接找到文件,双击点开修改。

9 重启mysql服务
sudo systemctl restart mysql.service

尝试连接成功

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Mysql是一种开源的数据库系统,而macbook是苹果公司的笔记本电脑。当在macbook上使用mysql时,可能会出现“error 2002 (HY000): Can’t connect to local mysql server through socket”的问题,这是由于mysql服务器无法通过指定路径的套接字连接到本地主机。 这个问题通常出现在你尝试使用mysql命令行连接到数据库时。查看错误信息时,可以看到它指定套接字文件的路径。这个路径可能会受到各种因素的影响,例如mysql的安装配置或者系统的文件权限。 要解决这个问题,首先需要确认mysql服务器是否正在运行。可以在终端输入以下命令来检查: ps aux | grep mysql 如果mysql服务器正在运行,你应该看到一个包含mysql的命令行输出。如果没有输出,你需要启动mysql服务器。可以通过以下命令来启动: sudo /usr/local/mysql/support-files/mysql.server start 如果服务器已经在运行,那么可能是由于默认的套接字路径不正确导致无法连接。可以通过编辑mysql的配置文件来更改默认路径。这个文件可能位于/etc/mysql/my.cnf或/usr/local/mysql/my.cnf。 在配置文件中,你需要找到socket参数并将其更改为正确的路径。例如,如果你的mysql安装在/usr/local/mysql中,则socket的参数应该是: socket = /usr/local/mysql/mysql.sock 在保存更改后,可以尝试重新连接mysql。如果问题仍然存在,请确认数据库是否正在运行,并且验证路径是否正确。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

NoBug.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值