mysql 创建用户、设置权限

来源:互联网 发布:傲剑丹田升级数据一游 编辑:程序博客网 时间:2024/04/28 01:28

-- 创建用户
CREATE USER 'admin'@'%' IDENTIFIED BY 'admin';
-- CREATE USER '用户名'@'host' IDENTIFIED BY '密码';
-- host指定该用户在哪个主机上可以登陆,如果是本地用户可用localhost,如果想让该用户可以从任意远程主机登陆,可以使用通配符%
-- 密码可以为空,如果为空则该用户可以不需要密码登陆服务器
-- CREATE USER 'admin'@'localhost' IDENTIFIED BY '123456';
-- CREATE USER 'admin'@'192.168.1.101' IDENDIFIED BY '123456';
-- CREATE USER 'admin'@'%' IDENTIFIED BY 'admin';
-- CREATE USER 'admin'@'%' IDENTIFIED BY '';
-- CREATE USER 'admin'@'%';


-- 设置用户的密码
SET PASSWORD FOR '用户名'@'host' = PASSWORD('密码'); --超级管理员设置其他用户的密码
SET PASSWORD = PASSWORD('密码); --设置当前登录用户的密码


-- 给用户授权超级管理员权限
GRANT ALL PRIVILEGES ON *.* TO '用户名'@'%' IDENTIFIED BY '密码' WITH GRANT OPTION;

-- 给用户授权某个数据库的所有权限
GRANT ALL PRIVILEGES ON 数据库名.* TO '用户名'@'%' IDENTIFIED BY '密码';
-- GRANT SELECT,INSERT ON *.* TO 'admin'@'%';
-- GRANT privileges ON 数据库名.表名 TO '用户名'@'host'
-- privileges - 用户的操作权限,如SELECT , INSERT , UPDATE 等(详细列表见该文最后面)
-- 如果要授予所的权限则使用ALL.;
-- 如果要授予该用户对所有数据库和表的相应操作权限则可用*表示, 如*.*. 
-- 用以上命令授权的用户不能给其它用户授权,如果想让该用户可以授权,在后面加上 WITH GRANT OPTION; 
-- GRANT privileges ON databasename.tablename TO 'username'@'host' WITH GRANT OPTION; 


-- 查询用户的权限 
SHOW GRANTS FOR '用户名'@'%';


-- 撤销用户所有的权限 
REVOKE ALL PRIVILEGES ON 数据库名.表名 FROM '用户名'@'%';
-- 假如给用户'admin'@'%'授权的时候是这样的(或类似的):
-- GRANT SELECT ON test.user TO 'admin'@'%'; 则在使用
-- REVOKE SELECT ON *.* FROM 'admin'@'%'; 命令并不能撤销该用户对test数据库中user表的SELECT 操作
-- 相反,如果授权使用的是
-- GRANT SELECT ON *.* TO 'admin'@'%';则
-- REVOKE SELECT ON test.user FROM 'admin'@'%'; 命令也不能撤销该用户对test数据库中user表的Select 权限


-- 删除用户 
DROP USER '用户名'; 
DROP USER '用户名'@'%';


参考 http://www.jb51.net/article/31850.htm

0 0
原创粉丝点击