likes
comments
collection
share

MySQL 8.0 创建用户及授权

作者站长头像
站长
· 阅读数 13

进入MySQL

mysql -u${username} -p${password}
  • ${username}:MySQL用户名
  • ${password}:MySQL密码

MySQL 8.0 创建用户及授权

进入数据库

如果没有数据库则先创建,若已存在数据库则跳过此步骤

创建数据库:

create database ${database};

进入数据库:

use ${database};

${database}:数据库名称

MySQL 8.0 创建用户及授权

创建用户

create user '${username}'@'${host}' identified by '${password}';

${username}:代表你要创建的此数据库的新用户账号

${host}:代表访问权限:

  • %:通配所有host地址权限(可远程访问)
  • localhost:本地权限(不可远程访问)
  • 指定特殊IP访问权限:如10.138.106.102

${password}:代表你要创建的此数据库的新密码

⚠️密码强度需要大小写及数字字母,否则会报密码强度不符合

create user 'testUser'@'%' identified by 'William...123';

MySQL 8.0 创建用户及授权

查看用户

进入系统数据库

use mysql;

查看用户相关信息

select host, user, authentication_string, plugin from user;

若展示的信息中有刚加入的用户testUser,则添加成功。切记查看完要切换回操作的数据库。

MySQL 8.0 创建用户及授权

用户授权

grant ${auth} on ${database}.${table} to '${username}'@'${host}';

${auth}:权限

  • all privileges:全部权限
  • select:查询权限
  • select,insert,update,delete:增删改查权限
  • select,[...]:查...等权限

database:数据库名{database}:数据库名 database:数据库名{table}:具体表名

  • *:代表全部表
  • A,B:代表具体A、B表

${username}:代表用户名

${host}:代表访问权限:

  • %:通配所有host地址权限(可远程访问)
  • localhost:本地权限(不可远程访问)
  • 指定特殊IP访问权限:如10.138.106.102
# 赋予test数据库user表增删改差权限
grant select,insert,update,delete on test.user to 'testUser'@'%';

MySQL 8.0 创建用户及授权

刷新权限

flush privileges;

MySQL 8.0 创建用户及授权

验证

MySQL 8.0 创建用户及授权

撤销权限

revoke ${auth} on ${database}.${table} from '${username}'@'${host}';

${auth}:权限

  • all privileges:全部权限
  • select:查询权限
  • select,insert,update,delete:增删改查权限
  • select,[...]:查...等权限

database:数据库名{database}:数据库名 database:数据库名{table}:具体表名

  • *:代表全部表
  • A,B:代表具体A、B表

${username}:代表用户名

${host}:代表访问权限:

  • %:通配所有host地址权限(可远程访问)
  • localhost:本地权限(不可远程访问)
  • 指定特殊IP访问权限:如10.138.106.102
# 撤销testUser用户对test数据库中的user表的增删改差权限
revoke select,insert,update,delete on test.user from 'testUser'@'%';
# 查看用户权限
show grants for 'testUser'@'%';

MySQL 8.0 创建用户及授权

删除用户

drop user '${username}'@'${host}';

${username}:代表用户名

${host}:代表访问权限:

  • %:通配所有host地址权限(可远程访问)
  • localhost:本地权限(不可远程访问)
  • 指定特殊IP访问权限:如10.138.106.102
# 删除用户testUser
drop user 'testUser'@'%';

MySQL 8.0 创建用户及授权