mysql版本5.7

新安装的数据库只能localhost访问??是不是很苦逼

下面介绍如何允许远程访问root

1. “试一下”能否远程登录

> mysql -u root -p -h 10.0.42.180

    答案是否定的。那就开始进行设置吧

2. 登录数据库,默认本地访问

> mysql -u root -p

3.切换mysql数据库

mysql> use mysql

4.执行查询,查看数据库当前有访问权限的信息

mysql> SELECT User, Password, Host FROM user;

只有localhost才能访问

5.设置访问权限

注意:下面语句运行与mysql5.7及以前版本

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;

其中"*.*"代表所有资源所有权限, “'root'@%”其中root代表账户名,%代表所有的访问地址,也可以使用一个唯一的地址进行替换,只有一个地址能够访问。如果是某个网段的可以使用地址与%结合的方式,如10.0.42.%。IDENTIFIED BY 'root',这个root是指访问密码。WITH GRANT OPTION允许级联授权。

mysql 8版本执行下面语句

-- 创建用户
CREATE USER 'root'@'%' IDENTIFIED BY 'root';
-- 授权
grant all privileges on *.* to 'root'@'%' ;

6.刷新访问权限表(不要忘了)

mysql> FLUSH PRIVILEGES;

7. 重新查看用户表

mysql> SELECT User, Password, Host FROM user;

8.验证远程访问

> mysql -u root -p -h 10.0.42.180

OK,登录成功

Logo

更多推荐