码迷,mamicode.com
首页 > 数据库 > 详细

MySQL允许远程登录配置

时间:2019-06-06 16:08:05      阅读:115      评论:0      收藏:0      [点我收藏+]

标签:primary   mysql   需要   用户   database   执行   选项   服务器   远程   

1、查看user表
mysql> use mysql
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> select host,user,password from user;
+-----------------------+---------+-------------------------------------------+
| host                  | user    | password                                  |
+-----------------------+---------+-------------------------------------------+
| localhost             | root    | *D2DC387634BA98FE0528FC555B66B391FD009465 |
| localhost.localdomain | root    | *D2DC387634BA98FE0528FC555B66B391FD009465 |
| 127.0.0.1             | root    | *D2DC387634BA98FE0528FC555B66B391FD009465 |
| localhost             |         |                                           |
| localhost.localdomain |         |                                           |
+-----------------------+---------+-------------------------------------------+
5 rows in set (0.00 sec)

2、设置远程连接
第一种(改表法):
修改host字段的值,将localhost修改成需要远程连接数据库的ip地址或者直接修改成%。
修改成%表示,所有主机都可以通过root用户访问数据库。
mysql> update user set host=‘%‘ where user=‘root‘ and host=‘localhost‘;
运行上面语句可能会有个报错:
ERROR 1062 (23000): Duplicate entry ‘%-root‘ for key ‘PRIMARY‘
不用管,直接继续执行:
mysql> flush privileges;

或者直接创建一个新用户允许外联:
insert into mysql.user(Host,User,Password) values("%","用户名",password("密码"));
grant all privileges on `库名或*`.* to ‘用户名‘@‘%‘ identified by ‘密码‘;  
flush privileges;

第二种(授权法):
如使用root从任何主机连接到mysql服务器的话。
GRANT ALL PRIVILEGES ON *.* TO ‘root‘@‘%‘ IDENTIFIED BY ‘密码‘ WITH GRANT OPTION;
mysql> flush privileges;

如果你想允许用户myuser从ip为192.168.0.77的主机连接到mysql服务器,并使用12345作为密码
GRANT ALL PRIVILEGES ON *.* TO ‘myuser‘@‘192.168.0.77‘ IDENTIFIED BY ‘12345‘ WITH GRANT OPTION;
mysql> flush privileges;

注:
数据库添加用户语句:
grant all privileges on testdb.* to ‘test_user‘@‘localhost‘ identified by "密码" with grant option;
WITH GRANT OPTION 这个选项表示该用户可以将自己拥有的权限授权给别人。
在创建操作用户的时候不指定WITH GRANT OPTION选项将导致该用户不能使用GRANT命令创建用户或者给其它用户授权。
如果不想这个用户有这个grant的权限,可以不加这句
 

MySQL允许远程登录配置

标签:primary   mysql   需要   用户   database   执行   选项   服务器   远程   

原文地址:https://www.cnblogs.com/deverz/p/10985008.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!