MySQL 远程登陆踩坑记

MySQL 远程登陆

这里以 windwos 平台为例。
当你没有做任何 mysql 数据库的配置,在另一台机器上远程访问 mysql 时候会报错:

命令行远程登陆

mysql -h192.168.1.1 -uroot -p -P3306
1130 - Host 'xxxx' is not allowed to connect to this MySQL server

此时你会想到会不会是没有给用户添加远程访问的权限,于是连接远程机器,进入mysql,使用select user,host from mysql.user='root',查看发现,果然 root 用户只有localhost登陆的权限。
于是使用grant all privileges on *.* to root@'localhost' identified by '123456';
然后使用flush privileges;刷新权限。

退出exit

使用net stop mysql停止mysql服务
使用net start mysql启动mysql服务
然后再次登陆
使用select user,host from mysql.user='root'

MySQL 远程登陆踩坑记
发现有远程登陆的权限了

然后回到远程的主机
使用navicate或者直接远程登陆,发现还是报错,无法登陆。

然后在网上找了n多的解决办法,还是不行。

最后再次使用net stop mysql之后,进入进程管理,发现mysql服务还是在启动的状态。。。

MySQL 远程登陆踩坑记

于是手动停止了关于mysql的所有的进程。

之后再次启动mysql,可以在控制面板—》管理工具—》服务下启动,或者直接使用net start mysql启动。

此时远程登陆mysql发现可以了,主要还是没有真正的重启mysql服务器。

免密登陆

  1. 停止服务器

net stop mysql
在mysql.ini文件中添加

[client]
host=localhost
user="root" #如是普通用户输入用户名即可
password="******" #这里填入你的mysql root(普通用户)用户对应的密码
保存退出后 重新启动MySQL数据库即可
  1. 停止服务器后
    还是在刚刚的文件中添加
    skip-grant-tables
    重启之后,直接mysql -uroot -p回车之后就可以登陆了。
本作品采用《CC 协议》,转载必须注明作者和本文链接
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

请勿发布不友善或者负能量的内容。与人为善,比聪明更重要!