这里总结一下MySQL数据库主要版本的两种配置用户权限的方式,包括MySQL5.*以及MySQL8.*+ (MySQL5.6、MySQL5.7、MySQL8、MySQL10)
MySQL8.*+配置用户权限
创建用户并指定连接权限,分别是针对特定ip开放远程连接以及对所有来源开放远程连接
# 针对ip create user 'root'@'192.168.0.10' identified by 'password'; #全部 create user 'root'@'%' identified by 'password';
根据不同用户的不同连接方式,给予不同的权限,分别是所有数据库权限和部分数据库权限
# 给用户最大权限 grant all privileges on *.* to 'root'@'%'; # 给部分权限(test 数据库) grant all privileges on test.* to 'root'@'%';
修改用户远程连接加密规则,此处根据需要修改,部分客户端不修改可能会报错
修改远程连接用户的加密规则 ALTER USER 'test'@'%' IDENTIFIED WITH mysql_native_password BY 'password';
设置完之后刷新权限表
# 刷新权限表 flush privileges;
MySQL5.*配置用户权限
5.*版本在给予权限的时候会自动创建用户,因此不用先创建用户,以下分别是针对所有权限及部分权限的用户创建
# 给用户最大权限 grant all privileges on *.* to 'root'@'%' identified by 'password'; # 给部分权限(test 数据库) grant all privileges on test.* to 'root'@'%' identified by 'password' with grant option; # 刷新权限表 flush privileges;