MySQL创建新用户并赋予指定数据库权限
创始人
2024-11-05 22:07:41
0

创建账号时并赋予权限语法如下:

grant all privileges on *.* to '用户名'@'登录IP或者域名' identified by '登录密码' with grant option; 
  • all privileges: 表示授权用户全部权限,当然你也可以指定赋予具体权限,比如SELECT、UPDATE、CREATE、DROP等。
  • on:表示这些权限可以作用于哪些数据库和哪些表,*.*表示作用于所有数据库和所有表,格式为数据库名.表名。比如有一个test库,想让yxc用户拥有查看test库所有表的权限,那么可以这样写:grant SELECT on test.* to 'yxc'@'%' identified by '登录密码';
  • to:将权限授予哪个用户。格式:'用户名'@'登录IP或域名'。这里登录IP或域名后面如果是’localhost’表示该用户只能在本地主机上进行访问,如果是通配符’%'代表允许从任何主机登录。
  • IDENTIFIED by:指定用户的登录密码。
  • with grant option:表示允许用户将自己的权限授权给其它用户。

部分权限含义如下:

权限含义
ALL [PRIVILEGES]设置除GRANT OPTION之外的所有简单权限
ALTER允许使用ALTER TABLE
ALTER ROUTINE更改或取消已存储的子程序
CREATE允许使用CREATE TABLE
CREATE USER允许使用CREATE USER, DROP USER, RENAME USER和REVOKE ALL PRIVILEGES。
CREATE VIEW允许使用CREATE VIEW
DELETE允许使用DELETE
DROP允许使用DROP TABLE
INDEX允许使用CREATE INDEX和DROP INDEX
INSERT允许使用INSERT
SELECT允许使用SELECT
SHOW DATABASESSHOW DATABASES显示所有数据库
SHOW VIEW允许使用SHOW CREATE VIEW
SHUTDOWN允许使用SHUTDOWN关闭数据库服务器
UPDATE允许使用UPDATE
GRANT OPTION允许授予权限

eg:创建用户yxc,设置密码yxc@224!707,并赋予test数据库所有权限,并允许将自己的权限授权给其它用户。

grant all privileges on test.* to 'yxc'@'%' identified by 'yxc@224!707' with grant option; 

如果有些MySQL的数据库版本不允许在创建用户时就赋予权限,那么需要将创建和权限赋予分为两步:

create user 'yxc'@'%' identified by 'yxc@224!707'; -- 创建用户 GRANT all privileges ON  test.* TO 'yxc'@'%'; -- 将所有权限赋予给用户 

然后刷新权限使更改生效。

FLUSH PRIVILEGES;  

其他语法:

# 查看用户拥有的权限 SHOW GRANTS FOR 'yxc'@'%';  # 删除用户 DROP USER 'yxc'@'%'; -- 删除用户yxc,用户名(User)和主机名(Host)构成 FLUSH PRIVILEGES; -- 刷新权限  # 禁用用户 ALTER USER 'yxc'@'%' ACCOUNT lock; -- 禁用账号yxc FLUSH PRIVILEGES; -- 刷新权限  # 解除禁用 ALTER USER 'yxc'@'%' ACCOUNT UNLOCK; -- 解除禁用账号yxc FLUSH PRIVILEGES; -- 刷新权限  # 重命名用户名 -- 语法: rename user '用户名'@'IP或者域名' to '新用户名'@'IP或者域名'; -- eg:将yxc用户重命名为ly rename user 'yxc'@'%' to 'ly'@'%';  # 修改用户密码  set password for '用户名'@'IP或者域名'=password('新密码')  # 撤销权限REVOKE REVOKE SELECT ON test.* FROM 'yxc'@'%'; -- 撤销yxc在数据库test的权限  # 查看密码过期时间 show variables like 'default_password_lifetime';-- 0表示永不过期 # 设置密码过期时间为180天 set global default_password_lifetime=180; # 强制用户密码过期 ALTER USER 'yxc'@'%' PASSWORD EXPIRE; 


更多技术干货,请持续关注程序员大佬超。
原创不易,转载请务必注明出处。

相关内容

热门资讯

八分钟了解!newpoker怎... 八分钟了解!newpoker怎么安装脚本,哈糖大菠萝能开挂吗,指南书教程(有挂分析)1、哈糖大菠萝能...
方案辅助!微信小程序微乐破解器... 方案辅助!微信小程序微乐破解器2024!解谜真的是有辅助教程(有挂细节)1、进入到微信小程序微乐破解...
第9分钟了解!德普之星有辅助软... 第9分钟了解!德普之星有辅助软件吗,德州局透视脚本,步骤教程(有挂神器)运德普之星有辅助软件吗辅助工...
窍要辅助!洞庭茶苑app辅助!... 窍要辅助!洞庭茶苑app辅助!关于存在有辅助神器(有挂辅助)1.洞庭茶苑app辅助 选牌创建新账号,...
七分钟了解!wepoker怎么... 七分钟了解!wepoker怎么开辅助,wepoker透视脚本免费app,绝活儿教程(有挂细节)1、w...
窍要辅助!嘟咪互动有挂吗!开挂... 窍要辅助!嘟咪互动有挂吗!开挂是有辅助软件(有挂总结)窍要辅助!嘟咪互动有挂吗!开挂是有辅助软件(有...
1分钟了解!wepoker辅助... 1分钟了解!wepoker辅助器最新版本更新内容,德普之星私人局辅助免费,办法教程(有挂辅助)wep...
大纲辅助!心悦海南苹果版辅助器... 大纲辅助!心悦海南苹果版辅助器!关于是有辅助工具(有挂攻略)1、玩家可以在心悦海南苹果版辅助器线上大...
指南辅助!小程序广东雀神智能插... 指南辅助!小程序广东雀神智能插件安装下载!解谜真的是有辅助技巧(新版有挂)运小程序广东雀神智能插件安...
第九分钟了解!wepoker作... 第九分钟了解!wepoker作弊辅助,wpk辅助购买,步骤教程(新版有挂)1、完成wepoker作弊...