大家好,本篇文章主要讲的是如何设置mysql允许外部连接访问,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下

前置

windows在CMD中登陆MySQL 看到大家都如此我就放心了。。。_云草桑的博客-CSDN博客_cmd登录mysql是不是只能在bin文件夹下

目标 1配置远程云数据库 

2同步远程库到本地

 

 

root 密码

 开放特定IP

 宝塔 开放端口

 腾讯云开发IP和端口

脚本

1.设置mysql允许外部连接访问(授权):

1

2

grant all privileges on *.* to root@'%' identified by '123456' with grant option;

flush privileges;

例子:
查询mysql用户权限、授权、刷新使生效

1

2

3

select host, user from user;

grant all privileges on *.* to root@'%' identified by '密码' with grant option;

flush privileges;

指定ip地址授权:ip地址指的是连接时失败报错1130弹出的地址

1

2

grant all privileges on *.* to root@'ip地址' identified by '密码' with grant option;

flush privileges;

 

 

一些小坑

首先进入服务器mysql目录

mysql -uroot -p
MySQL [(none)]> show databases;
MySQL [(none)]> use mysql;
MySQL [mysql]> select User,Host from user;

//‘%':表示允许访问到mysql的ip地址;你也可以配置为具体到ip名称;%表示所有ip均可以访问;
MySQL [mysql]> update user set  Host ='%' where User='root';

//刷新MySQL的系统权限相关表­
MySQL [mysql]> flush privileges; 
 

在修改完ip如果是这个报错

ERROR 1062 (23000): Duplicate entry '%-root' for key 'user.PRIMARY'

意思是有用户的重复条目,因为user表查询会有两条数据 ip对应分别是 localhost  ,127.0.0.1

所以在修改ip的时候要修改一条数据

MySQL [mysql]> update user set  Host ='%' where User='root' and Host='localhost';
//或者
MySQL [mysql]> update user set  Host ='%' where User='root' and Host='127.0.0.1';

最后确认一下服务器端口3306时候对面开放就ok了。

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐