MySQL用户及权限管理

  • 查看用户及权限
    • 查看用户及作用域(使用范围)
    • 查看用户权限
  • 创建用户及授权
    • 字段参数
    • 用户管理

使用命令提示符登录MySQL

mysql -h localhost -u root -p

查看用户及权限

mysql中的用户信息和权限等都存储在一个名为mysql的数据库中。其中主要用到的是user、db、tables_priv、columns_priv、procs_priv这五张表,最重要的是user表。

表名 说明
user 表存储全局权限,适用于一个给定服务器中的所有数据库,在命令中展现形式为*.*;
db 表存储数据库权限,适用于一个给定数据库中的所有表,在命令中展现形式为[数据库名].*;
tables_priv 表存储表权限,适用于一个给定表中的所有列,在命令中展现形式为[数据库名].[表名];
columns_priv 表存储列权限,适用于一个给定表中的单一列,在命令中展现形式为;

查看用户及作用域(使用范围)

select user,host from mysql.user;

user表中user+host是复合主键,user表示用户名,host表示作用域(即可以登陆的IP)

查看用户权限

命令格式show grants for '[用户名]'@'[使用范围]'

show grants for 'root'@'localhost';

会显示可以使用的表名及权限,其中USAGE表示无权限,建议最大化窗口查看,表格会比较清晰

创建用户及授权

可以单独使用create user '[新用户名]'@'[作用域]' identified by '[密码]';来创建用户然后再授权,
也可以直接使用grant [权限] on [数据库名].[表名] to '[用户名]'@'[作用域]' identified by '[密码]';创建并授权,
最后需要使用命令flush privileges刷新权限变更。

字段参数

[权限]

  • all privileges:所有权限。
  • select:读取权限。
  • delete:删除权限。
  • update:更新权限。
  • create:创建权限。
  • drop:删除数据库、数据表权限。

[数据库名].[表名]

  • *.*:授予该数据库服务器所有数据库的权限。
  • dbName.*:授予dbName数据库所有表的权限。
  • dbName.dbTable:授予数据库dbName中dbTable表的权限。

[作用域]

  • localhost:只允许该用户在本地登录,不能远程登录。
  • %:允许在除本机之外的任何一台机器远程登录。
  • 192.168.0.100:具体的IP表示只允许该用户从特定IP登录。

用户管理

创建用户

create user '[新用户名]'@'[作用域]' identified by '[密码]';

为现有用户授权

grant [权限] on [数据库名].[表名] to '[用户名]'@'[作用域]';

创建用户并授权 or 修改已有用户密码并授权

grant [权限] on [数据库名].[表名] to '[用户名]'@'[作用域]' identified by '[密码]';

修改用户名

rename user'[旧用户名]'@'[作用域]' to '[新用户名]'@'[作用域]'

修改密码

alter user '[用户名]'@'[作用域]' identified by '[新密码]';
set password for [用户名]@[作用域]=password('[新密码]');

删除授权

revoke [权限] on [数据库名].[表名] from '[用户名]'@'[作用域]';

删除用户

drop user '[用户名]'@'[作用域]';

MySQL用户及权限管理相关推荐

  1. mysql root 登录权限管理_MySQL基础教程(7)MySQL用户与权限管理

    在生产环境中通常不建议直接用数据库的root账号来管理每个数据库,这也是为什么安装好MySQL后root用户只能本地登录的原因.正确的做法是为每个业务建立独立的数据库,并且为这些数据库创建一个拥有合适 ...

  2. mySQL用户和权限管理v1

    第01章 MySQL用户和权限管理 mySQL权限控制通过两步控制,能不能连接(验证用户身份),能执行什么操作(验证用户权限). 验证用户身份,需要验证,连接mySQL的计算机的IP地址或计算机名称, ...

  3. MySQL用户与权限管理

    执行mysql select 查询报错: SELECT command denied to user 'root'@'localhost' for table "xxx" 问题原因 ...

  4. mysql root用户可以同时几个人连接_重学MySQL系列(四):10分钟快速掌握MySQL用户与权限管理

    在这篇文章中,我们来聊聊怎么管理MySQL的用户及如何为不同用户分配不同的管理权限,其实,在日常使用MySQL的过程中,这部分的工作是由DBA(数据管理员)来完成的. 而我们作为一般的开发人员,只要拿 ...

  5. mysql用户及权限管理_MySQL 用户及权限管理

    1.mysql用户的定义 在mysql中,用户由用户名和主机域组成的. 1.1 用户名的写法 mysql> create user test1@'localhost'; 注意:用户名不要以数字. ...

  6. Linux命令:MySQL系列之十--MySQL用户和权限管理,mysql管理员密码重置

    MySQL用户账号包括:用户名@主机名 用户名:16个字符以内 主机:主机有以下几种表现方式 主机名: mysql IP地址: 172.16.90.111 网络地址:172.16.0.0/255.25 ...

  7. mysql 列级权限授予用户_mysql 用户及权限管理 小结

    MySQL 默认有个root用户,但是这个用户权限太大,一般只在管理数据库时候才用.如果在项目中要连接 MySQL 数据库,则建议新建一个权限较小的用户来连接. 在 MySQL 命令行模式下输入如下命 ...

  8. mysql-front权限管理_mysql 用户及权限管理 小结

    MySQL 默认有个root用户,但是这个用户权限太大,一般只在管理数据库时候才用.如果在项目中要连接 MySQL 数据库,则建议新建一个权限较小的用户来连接. 在 MySQL 命令行模式下输入如下命 ...

  9. mysql用户的权限分配

    2019独角兽企业重金招聘Python工程师标准>>> 因今天在分配数据库权限的时候,同事反映账户不能使用函数,遂搜集资料总结了一番关于mysql用户的权限分配. MySQL 赋予用 ...

最新文章

  1. 谷歌发布最新看图说话模型,可实现零样本学习,多类型任务也能直接上手
  2. class 与 原型链 解析
  3. 一周一论文(翻译)—— [PVLDB 12] Distributed GraphLab A Framework for Machine Learning 分布式机器学习图计算框架
  4. chrome调试工具常用功能整理
  5. 【pmcaff】打开页面,这个行为值多少钱?
  6. [BUUCTF-pwn]——jarvisoj_level2_x64
  7. Java内联虚拟方法调用的性能
  8. visionpro定位不跟随图像_医海探弋,TMS定位技术的发展分析
  9. 如何实现把固定内容自动写入excel_Excel批量查找指定内容并导出
  10. 40 个 常用的 SpringBoot 注解,你知道几个?
  11. ISO27001风险评估实施流程(详细版)
  12. 页面置换算法之最佳置换算法的模拟(C++)
  13. 盈利与公益矛盾迸发下,众筹平台如何才能自救?
  14. caffe最优化方法
  15. 环艺考计算机英语吗,应届考取北理环艺分享|愿汗水泪水都不会被辜负!
  16. 解决Windows11 Microsoft Store微软商店无法联网 Windows聚焦不更新 微软账户无法登录等
  17. 基于大数据的线上线下电商用户数据挖掘研究
  18. Base64编解码原理并用Java手工实现Base64编解码
  19. linux grant命令,linux指令集
  20. “会员制营销”和“EMAIL营销”培训方案

热门文章

  1. /etc/sudoers中的含义
  2. 【转】测试人员的思想理念和工作方法
  3. iPhone Development Blog系列: 如何制作服务条例窗口
  4. 去除代码行号的一个小程序(控制台版本)
  5. 将k8s制作成3D射击游戏,好玩到停不下来,附源码
  6. 官宣!.NET官网发布中⽂版
  7. 【干货】单日10亿GMV的.NET5电商平台,是如何设计的?
  8. EF Core 6 简化的数据库上下文注册
  9. WPF 跟随拖动改变的三次贝塞尔曲线思路
  10. iNeuOS 工业互联网操作系统,在核工业测控领域的成功应用