Mysql授权篇

mysql

授权数据库

命令的模板语句(只有root用户下才能使用的)

GRANT All PRIVILEGES ON databasename.tablename TO 'username'@'%';
  • 备注:
    • all是代表所有权限(增删查改),根据需求这里可以改成(select, insert, update,delete)
    • databasename 是数据库名,tablename 是表名,databasename.tablename是数据库下的表,具体使用是“数据库名.数据库下的某个表名”
    • username 是需要授权的用户名,%是指代在所有的ip地址段(默认不写ip就是无ip地址限制),根据需求需要限制则可以把%改成对应的ip地址,ip地址可以是详细的一个ip地址(192.168.1.1),也可以是ip段(192.168.1.%)
    • 语句中只有username一定要指定填写的,诸如databasename.tablename可以指定某个数据库下的某个表,也可以指定某个数据库下的所有表(exp:databasename.)或者所有数据库下的所有表(exp:.*)

例句

存在kwt这个用户(默认远程访问密码为此用户登陆密码):  
GRANT All PRIVILEGES ON fmt.* TO 'kwt'@'%';  

如果需要设定一个新的远程访问密码(与mysql登陆密码共存)则后续接identified by '密码':  
GRANT All PRIVILEGES ON fmt.* TO 'kwt'@'%' identified by 'admin';

授其可同等授予其他账号同等权限则后续接 WITH GRANT OPTION:
GRANT All PRIVILEGES ON fmt.* TO 'kwt'@'%' WITH GRANT OPTION;

取消授权数据库

命令的模板语句(只有root用户下才能使用的)

REVOKE All ON databasename.tablename TO 'username'@'%';
  • 备注:
    • 与授权的语句基本相似,去掉了"PRIVILEGES"

表格总结下

GRANT/revoke All/select, insert, update,delete databasename.tablename(*可为所有) username %
授权/取消授权 所有权限/查增改删 库名.表名 用户名 IP地址/地址段

你可能感兴趣的:(Mysql授权篇)