Navicat远程连接MySQL 提示1045

问题:

  今天在自己的阿里云服务器上(Window Server2012 R2)安装了一个MySQL5.7.26,在阿里云服务器中通过本地链接是正常的,但是当在自己的电脑上使用Navicat连接是提示:1045 - Access denied for user 'root'@'223.74.158.192'(using password:YES) 异常,如下图所示:

异常原因:

由上图我们可以字面意思我们可以知道虽然用户名和密码正确,但是却没有在其他ip地址上访问的权限。需要登录MySQL然后修改ip访问权限。

解决方法:

使用cmd登录MySQL数据库:

解决‘mysql’ 不是内部或者外部命令,也不是可运行的程序或者批量文件。

出现这里情况的原因一般情况就是没有在环境变量中配置MySQL数据安装环境路径,解决方法:

找到MySQL安装的地址复制路径=>然后再到高级系统=>系统环境变量=>Path中添加,若下如图所示:

 复制MySQL安装的完整路径:

C:Program FilesMySQLMySQL Server 5.7in

 配置完成确认应用即可:

在MySQL数据库中使用root登录(输入正确的密码):

mysql -u root -p

设置MySQL数据库的远程访问权限:

GRANT ALL PRIVILEGES ON *.* TO '登录用户名(如:root)'@'%' IDENTIFIED BY '登录密码(如:123456)' WITH GRANT OPTION;
 
// 格式:GRANT 权限 ON 数据库名.表名 TO 用户@登录主机 IDENTIFIED BY "用户密码";@ 后面是访问MySQL的客户端IP地址(或是 主机名) % 代表任意的客户端,如果填写 localhost 为本地访问(那此用户就不能远程访问该mysql数据库了)

 刷新MySQL数据库权限:

FLUSH PRIVILEGES;

在Navicat中输入刚才设置的账号密码连接数据库:

 

原文地址:https://www.cnblogs.com/Can-daydayup/p/13246946.html