MySQL用户及权限管理

栏目: 数据库 · 发布时间: 7年前

内容简介:在MySQL中用户数据放在mysql库的user表里,在该表中保存用用户的用户名,密码和权限信息。命令:说明:

MySQL 中用户数据放在mysql库的user表里,在该表中保存用用户的用户名,密码和权限信息。

创建用户

命令: CREATE USER 'username'@'host' IDENTIFIED BY 'password' ;

说明:

  • username:登录的用户名
  • password:是登录的密码
  • host:指定可以登录的主机,其中localhost表示本机,%表示所有主机

举例:

CREATE USER 'testuser'@'%' INDENTIFIED BY '123';
复制代码

创建一个用户后,user表中会插入一行新的数据,但是该用户是没有任何权限的

管理用户权限

添加用户权限

命令: GRANT privileges ON databasename.tablename TO 'username'@'host' 说明:

*
*

举例:

# 对用户testuser授予在所有主机上对test库的SELECT权限
GRANT SELECT ON test.* TO 'testuser'@'%';

# 对所有库都授予INSERT权限后,user表中的该用户Insert_priv的值被置为Y
GRANT INSERT ON *.* TO 'testuser'@'%';

# 给该用户赋予所有权限
GRANT ALL privileges ON *.* TO 'testuser'@'%';

# 执行完授予权限的命令后,必须执行以下命令使修改生效
flush privileges;
复制代码

撤销用户权限

命令: REVOKE privileges ON databasename.tablename FROM 'username'@'host';

例子: REVOKE ALL privileges ON *.* FROM 'testuser'@'%';

撤销权限的使用方法与授予权限类似,参照授予的方式进行处理即可。

修改用户密码

命令: SET PASSWORD FOR 'username'@'host' = PASSWORD('newpassword');

例子: SET PASSWORD FOR 'testuser'@'%' = PASSWORD('abcdef');

查看权限

查看本用户的权限: SHOW GRANTS;

查看指定用户的权限: SHOW GRANTS FOR 'username'@'host';

举例:

# 查询用户testuser在所有主机上的权限
SHOW GRANTS FOR 'testuser'@'%'
复制代码

删除用户

删除用户: DROP USER 'username'@'host';

举例: DROP USER 'testuser'@'%';

用户被删除后user表中就不存在该用户的数据。但是有一点需要注意的是,user表中是通过用户名和主机名来唯一确定一个用户,如果运行 CREATE USER 'testuser'@'10.1.1.1' IDENTIFIED BY 'password';CREATE USER 'testuser'@'10.1.1.2' IDENTIFIED BY 'password'; 这两条语句,会在user表中插入两条信息。因此,删除用户的时候也只能分两次删除。

总结

本篇文章介绍了MySQL管理用户常用的一些命令,包括创建用户,添加用户权限,删除用户权限,修改用户密码,查询用户权限。另外,user表也是一种数据表,因此也可以用MySQL操作表的 SQL 语句去操作该表,比如删除用户可以使用 DELETE FORM USER WHERE User = testuser 。当然,这种方式是不被推荐的,存在更大的误操作风险。


以上所述就是小编给大家介绍的《MySQL用户及权限管理》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

测试驱动开发

测试驱动开发

Kent Beck / 孙平平、张小龙 / 中国电力出版社 / 2004-4-1 / 28.00元

《测试驱动开发》(中文版)设想把编程看成是转动曲柄从井里提一桶水上来的过程。如果水桶比较小,那么仅需一个能自由转动的曲柄就可以了。如果水桶比较大而且装满水,那么还没等水桶全部被提上来你就会很累了。你需要一个防倒转的装置,以保证每转一次可以休息一会儿。水桶越重,防倒转的棘齿相距越近。测试驱动开发中的测试程序就是防倒转装置上的棘齿。一旦我们的某个测试程序能工作了,你就知道,它从现在开始并且以后永远都可......一起来看看 《测试驱动开发》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具