下面介绍mysql数据库中用户管理的一些基本运维知识,包括用户的创建、密码管理、用户权限分配、用户删除等。#MySQL专栏#
用户创建用户创建的常用命令如下:
CREATEUSERusername
hostIDENTIFIEDBYpassword;其中,username指将创建的用户名;host指定该用户在哪个主机上可以登录,如果是本地用户可用localhost,如果想让该用户可以从任意远程主机登陆,可以使用通配符%。需要特别注意用户后期的授权、撤销授权等,与创建时的host格式要保持一致;password指该用户的登录密码,密码可以为空,如果为空则该用户可以不需要密码登录。
常见的创建方式包括:
1、CREATEUSERTEST
localhostIDENTIFIEDBY;2、CREATEUSERTEST
..1.1IDENDIFIEDBY;3、CREATEUSERTEST
%IDENTIFIEDBY;4、CREATEUSERTEST
%IDENTIFIEDBY;5、CREATEUSERTEST
%;修改用户密码之前关于修改用户密码专门写了一篇文章介绍,需要的跳转「MySQL专栏」MySQL用户密码设定的几种方法查看学习。查看用户SELECTUser,Host,PasswordFROMmysql.user;(5.7之前版本)
SELECTUser,Host,authentication_stringFROMmysql.user;(5.7及之前版本)
应该就是5.7的版本是个分水岭,其他的版本没有实际测过,总之新的版本user中的Password字段调整为authentication_string了的。
删除用户deletefrommysql.userwhereuser=TEST;或者dropuserTEST
localhost;建议通过user表删除,避免host与用户创建时不一致报错的问题。
用户授权用户授权命令参考为:GRANTprivilegesONdatabasename.tablenameTOusername
host;其中:privileges指用户的操作权限,如SELECT,INSERT,UPDATE等,如果要授予所的权限则使用ALL;databasename指数据库名;tablename指具体表名,如果要授予该用户对所有数据库和表的相应操作权限则可用*表示,如*.*。
查看用户权限查看用户权限,使用命令:showgrantsforusername
host撤销用户权限撤销用户权限命令:REVOKEprivilegeONdatabasename.tablenameFROMusername
host;同用户授权部分,增加关键字revoke即可。
以上就是mysql数据库用户管理中关于用户的创建、密码管理、用户权限分配、用户删除、用户权限授权方面的运维知识。