注:下面sql语句都是在mysql库下执行的
创建用户
create user 'username'@'host' identified by 'password';
参数说明:
username:创建的用户名
host:指定该用户在哪个主机上登陆,本地登录可用localhost,任意远程主机登陆,可用通配符%,某ip登录,填写该ip
password:用户的登陆密码,密码可以为空,为空则该用户可以不需要密码登陆服务器
查看用户及权限
1、查看全部用户
select user,host from user;
2、查看某个用户的权限
show grants for username@localhost;
添加用户权限
grant privileges on databasename.tablename to 'username'@'host'
参数说明:
privileges:用户的操作权限,如SELECT,INSERT,UPDATE等,如果要授予所的权限则使用ALL
databasename:数据库名(所有数据库可用*表示)
tablename:表名(所有表可用*表示)
注:让该用户可以授权,需用其他命令。
撤销用户权限
revoke privilege on databasename.tablename from 'username'@'host';
参数说明:
privileges:用户的操作权限,如SELECT,INSERT,UPDATE等,如果要授予所的权限则使用ALL
databasename:数据库名(所有数据库可用*表示)
tablename:表名(所有表可用*表示)
注:授权如果是*.*,撤销也应是是*.*,不然就会失效,类似下面情况就会命令失效
例一:授权使用:grant all on test.users to 'dog'@'%';撤销使用:revoke all on *.* from 'dog'@'%';
例二:授权使用:grant all on *.* to 'dog'@'%';撤销使用:revoke all on test.user from 'dog'@'%';
修改密码
set password for 'username'@'host' = password('newpassword');
如果是当前登陆用户用:
set password = password("newpassword");
删除用户
drop user 'username'@'host';