最简单(全部赋权)
语法
| # 创建用户 |
| CREATE USER 'username'@'%' IDENTIFIED BY 'mypassword'; |
| # 赋权所有 |
| GRANT ALL PRIVILEGES ON *.* TO 'username'@'%'; |
| # 刷新权限 |
| FLUSH PRIVILEGES; |
1.创建mysql用户
1.1 新建用户
| CREATE USER 'username'@'host' IDENTIFIED BY 'mypassword'; |
| # 参数 |
| # username:需要被创建的用户名称 |
| # host:指定登陆主机,"localhost"=>本地, "%"=>标识允许任意远程主机 |
| # mypassword: 用户登陆密码,建议复杂点 |
for exp:
| CREATE USER 'xianpm'@'%' IDENTIFIED BY '123321'; |
1.2 查询用户信息
| select * from mysql.`user` |
2.授权用户
语法
| GRANT privileges ON databasename.tablename TO 'username'@'host' |
| # 参数 |
| # privileges: 用户的操作权限:insert,select,update等,所有权限使用ALL |
| # databasename: 指定可以操作的数据库,通配符“*”表示所有库 |
| # tablename: 指定可以操作的数据表,通配符“*”表示所有表 |
| # host:指定主机可以登录,localhost:表示本地用户可用,%:通配符表示允许任意远程主机登陆 |
2.1 指定数据库和表赋权
| # 示例1: 授权给xianpm用户tc数据库的tb_user数据表的查询和插入操作 |
| GRANT SELECT, INSERT ON tc.tb_user TO 'xianpm'@'%'; |
2.2 赋予全部权限
| # 授权xianpm用户可以操作所有权限 |
| GRANT ALL ON *.* TO 'xianpm'@'%'; |
2.3 查看用户权限
| show grants for 'xianpm'; |
2.4 回收用户权限
| revoke privileges on DBNAME[.TABLENAME] from username; |
2.5 收回用户数据库的所有权限
| revoke all privileges on *.* from username; |
3. 修改用户密码
| use mysql; |
| select * from user; |
| update user set password = password('New@PassWord') where user = 'username'; |
4. 删除用户
如果直接从数据库delete删除用户,再次创建该用户时会报错
| CREATE USER 'xianpm'@'%' IDENTIFIED BY 'Zq_123456' |
| > 1025 - Operation CREATE USER failed for 'xianpm'@'%' |
| > 时间: 0.01s |
因此删除用户需要使用以下命令
5. 刷新权限(务必执行)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
· SQL Server 2025 AI相关能力初探
· 为什么 退出登录 或 修改密码 无法使 token 失效