首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >MySQL 设置用户可以远程连接

MySQL 设置用户可以远程连接

作者头像
酒馆丁老师
发布于 2020-09-08 14:38:06
发布于 2020-09-08 14:38:06
4K0
举报

虽然不建议大家生产环境中MySQL用户可以远程连接,但是开发时还是可以的,使用GRANT可以创建用户,可以控制权限。GRANT 实际开发过程中经常会用到。

目录

1.设置root可以任意IP 访问

2.创建用户授予权限

1

设置root可以任意IP 访问

代码语言:javascript
复制
更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改称"%"

mysql -u root -p

mysql>use mysql;

mysql>update user set host = '%' where user = 'root';

mysql>select host, user from user;

2

创建用户授予权限

代码语言:javascript
复制
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;

FLUSH PRIVILEGES;

其中:

grant 【不区分大小写】,是MySQL 的授权管理命令;

ALL PRIVILEGES 代表所有权限,包括 select,insert,udpate,create,alter等等,代表最大权限,除了root权限, ALL PRIVILEGES 就是最大权限,A也可以用 'select,insert,alter'等特定的权限限制;

on 后面跟第一个 *位置 代表数据库的名称,代表所有的数据库,第二个 * 位置 代表数据表名称,*代表所有的数据表,表示整个数据库的数据表都可操作。如想要区分每个用户只能管理单独的数据库、数据表,例如:

on 'testdb'.'user' 代表 授予testdb数据库的user表的权限。

TO 后面是用户MySQL 的用户名称,

@ 后面是客户端主机地址,其中 % 代表可以从任何主机访问,也可以指定具体的IP地址如'192.168.0.23'

IDENTIFIED BY 'mypassword' 用户的登录密码

最后GRANT 后要FLUSH PRIVILEGES 生效

END

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-02-12,如有侵权请联系 cloudcommunity@tencent.com 删除
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档