当前位置: 首页 > news >正文

Navicat连接远程服务器上的mysql

 写在前面:以后坚持遇到问题解决了之后就记录,周五解决的这个问题,周日才想起来记录发现已经忘记是如何解决的,重蹈覆辙!!

最近在本地的navicat上想要连接服务器上的mysql,最终一直报错如下:

终端连接报错如下:ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock'  


Navicat连接报错如下:

      找了好久的解决办法,最终是因为在远程服务器上的mysql没有开启权限,所以无法在其它机器上访问(这里需要在局域网下的机器),当然你要确定的你的mysql服务启动了


1.客户端下登录数据库

   输入如下:

mysql -uroot -p --socket=/var/run/mysqld/mysqld.sock

这里我如果输入的是这个

mysql -uroot -p 

报错如下:

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

问题原因:配置文件中的 socket 路径与 /tmp/mysql.sock 不一致,那么客户端会尝试连接错误的路径。因为服务器上的Mysql是老师的,所以暂时我就没有修改对应的配置文件了,采用如下进行临时登录:

mysql -uroot -p --socket=/var/run/mysqld/mysqld.sock

要是想彻底修改的话我感觉可以在服务器那台机器上更新 MySQL 客户端配置文件(通常是 /etc/mysql/mysql.conf.d/mysqld.cnf/etc/my.cnf),在 [client] 部分添加或修改 socket 参数:

[client]
socket=/var/run/mysqld/mysqld.sock

然后重新登录:

mysql -u root -p

登录成功显示如下:

2.查看root远程访问的权限

   输入如下:

use mysql;    ## 选择mysql数据库
select user,host from user;    ## 查看用户访问端口

输出如下:

注意:root用户默认的是localhost(这里我是修改过了),说明只允许从本地登录mysql服务。而我们要从远程以root用户连接数据库,就必须修改root的host的值,改为%,允许任何ip访问。

3.修改root中的host允许任何ip访问

输入如下:

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

再使用之前的命令:

select user,host from user;    ## 查看用户访问端口

可以看见root的host值被修改为%,即为成功!

刷新配置:

FLUSH PRIVILEGES;

4.修改远程访问的密码

mysql> ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';

输入完之后,看到Query OK,说明执行成功!

注意:此命令可以授权任何在mysql数据库user表中的用户以远程登录的方式访问数据库,本例中以’root’作为举例,若想授权其他用户,只需修改’root’的值为指定用户即可,123456’为’root’用户对应的登录密码(这里是我设置的密码),可以修改为你想要授权用户的登录密码。

最后启用本地的navicat连接即可,如下连接成功:

http://www.dtcms.com/a/312731.html

相关文章:

  • Java Stream API 编程实战
  • Java学习第一百部分——Kafka
  • Python批处理深度解析:构建高效大规模数据处理系统
  • kubectl基础操作实战-k8s集群安装
  • IO流-字节流-FileInputStream
  • 【设计模式】0.UML类图
  • Python特性工厂函数详解:优雅管理属性验证
  • 【技术干货】Matplotlib深度集成PyQt5实战:动态_静态图表一站式解决方案
  • 嵌入式学习-(李宏毅)机器学习(5)-day32
  • 集合篇-根据字符串出现频率排序
  • 每日面试题20:spring和spring boot的区别
  • 【MCAL】AUTOSAR架构下SPI数据同步收发具体实现
  • 《深入浅出RabbitMQ:从零基础到面试通关》
  • go 中的 fmt 占位符
  • LUA脚本语言
  • 【svg】
  • 人工智能之数学基础:几何型(连续型)随机事件概率
  • 2、docker容器命令 | 信息查看
  • Redis 7中的List类型指南
  • 14.Redis 哨兵 Sentinel
  • 10.Redis 数据类型
  • Back to the Features中,直观物理的评价指标是什么,计算方式是什么
  • 5 进入 CD 的世界
  • Thread 类的基本用法
  • 蛇形卷积介绍
  • Spring Cloud微服务中的内存泄漏问题定位与解决方案
  • 【Unity】背包系统 + 物品管理窗口 (上)
  • 7.13.B+树
  • 【机器学习】线性回归算法详解:线性回归、岭回归、Lasso回归与Elastic Net
  • [AI8051U入门第十四步]W5500实现UDP通信