MySQL 用户授权

本文详细介绍了MySQL的用户授权过程,包括grant命令的使用、权限管理、授权库mysql的操作,以及如何恢复和修改root密码。通过实例展示了如何添加、撤销权限、删除授权用户,并解释了相关命令和权限级别。
摘要由CSDN通过智能技术生成

目录

MySQL 用户授权

用户授权

grant授权

相关命令

授权库mysql

撤销权限

删除授权用户

root密码

恢复root密码

修改(重置)root密码


MySQL 用户授权

用户授权

grant授权

  • 用户授权

—— 在数据库服务器上添加新的连接用户,在添加用户时可以设置访问权限及连接密码。

—— 默认数据库管理员root用户本机登录有授权权限。

  • 命令格式

mysql> grant 权限列表 on 库名 to 用户名@“客户端地址”

identified by “密码” //授权用户密码

with grant option; //有授权权限,可选项

  • 权限列表

—— all //所有权限

—— usage //无权限

—— select,update,insert //个别权限

—— select,update (字段1, … ,字段N) //指定字段

  • 库名

—— *.* //所有库所有表

—— 库名.* //一个库

—— 库名.表名 //一张表

  • 用户名

—— 授权时自定义要有标识性

—— 存储在mysql库的user表里

  • 客户端地址

—— % //所有主机

—— 192.168.233.% //网段内的所有主机

—— 192.168.233.1 //1台主机

—— localhost //数据库服务器本机

  • 应用示例

—— 添加用户mydba,对所有库、表有完全权限

—— 允许从任何客户端连接,密码123qqq…A

—— 且有授权权限

实验环境准备:

MySQL服务端为主机192.168.233.130

MySQL客户端为主机192.168.233.150

注:MySQL客户端也要装有MySQL软件,否则无法使用SQL语句,也可以是用Mariadb替代。

服务端:

mysql> grant all on *.* to mydba@“%” identified by “123qqq…A” with grant option; //服务端进行用户授权,all表示有所有权限;*.*指所有库、所有表;%是指允许从所有主机进行连接;密码是123qqq…A,with grant option指的是有授权权限,可以授予别的用户权限。

客户端:

[root@DB2 ~]# mysql -h192.168.233.130 -umydba -p123qqq…A //客户端使用授权用户连接数据库服务器

    • 验证删除库和表的权限

客户端:

mysql> show databases; //从客户端查看数据库服务器中所有的库

mysql> drop database db1; //在客户端删除库db1

服务端:

mysql> show databases; //在服务端查询库db1已被删除

客户端:

mysql> use db2;

mysql> show tables;

mysql> drop table db2.t2; //在客户端删除库db2中的t2表

服务端:

mysql> select * from db2.t2; //在服务端查询db2中的t2表的数据出现报错,原因db2.t2表已被删除

ERROR 1146 (42S02): Table ‘db2.t2’ doesn’t exist

    • 验证新建库和表的权限

客户端:

mysql> create database db4; //在客户端新建一个库db4

mysql> create table db4.t1(id int); //在客户端库db4中新建一个表t1

服务端:

mysql> show databases; //在服务端查询库db4创建成功

mysql> use db4;

mysql> show tables; //在服务端查询表t1创建成功

    • 验证对表记录进行增删改查的权限

客户端:

mysql> select * from db3.user limit 1; //在客户端查询db3库中user表的前一行数据

mysql> insert into db4.t1 values(100); //在客户端db4库中的t1表中插入记录

服务端:

mysql> select * from db4.t1; //在服务端中查询db4库中的t1表,发现刚才插入的记录

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值