我的编程空间,编程开发者的网络收藏夹
学习永远不晚

MySQL数据库用户授权管理

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

MySQL数据库用户授权管理

一、用户授权

1、注意事项:

-  MySQL数据库服务器搭建好之后,放在独立的房间里或者是IDC机房,MySQL数据库服务默认只允许数据库管理员root在本地登录,要在其他客户端登录管理数据库则需要授权才可以。

-  程序员(网站运行数据)编程使用数据库都是在客户端,需要授权。

-  默认只有数据库管理员在数据库服务器本机登录才有授权权限

2、授权库mysql,主要的几个表:

- user:记录用户的信息

 host:客户端 user:授权用户名password:授权用户密码  *_priv:权限

- db:记录授权用户对库的授权信息  

 //工作中删除test及表的完全权限记录(delete from mysql.db where user=“”

 Host:客户端  Db:库名 user:用户名 *_priv:权限

- tables_priv:记录授权用户对表的授权信息

有对表的授权的时候才会有记录

Host  db user  table_name  grantor timestamp  table_priv  column_priv

- columns_priv:记录授权用户对字段的授权信息

有对字段的授权才会记录(grant select,update(name,sex) on studb.usertab tolucy;

3、授权命令:

格式:mysql>grant 权限列表 on 数据库名.表名 to 用户名@ //网络中所有主机可用该用户登录,无需密码

  mysql>grant 权限列表 on 数据库名.表名to 用户名@“客户端地址”//只允许一台客户端用该用户名登录,无需密码

  mysql>grant 权限列表 on 数据库名.表名to 用户名@“客户端地址”  identified by “密码”//只允许一台客户端用该用户名登录,需要密码

 mysql>grant 权限列表 on 数据库名.表名to 用户名@“客户端地址”  identified by “密码” withgrant option//只允许一台客户端用该用户名登录,需要密码,该用户有给其他用户授权的权限

1)权限列表:用户连接后对数据库有什么样的操作权限

- all:对指定的库拥有全部权限

- select:只有查看指定库的权限

- insert:只有在指定库的插入记录权限

- update:updtae(字段1,字段2.......)更新权限,对某表某字段的更改权限

- delete:

- USAGE:对库和表没有任何权限,用户只能登录

- 多个权限逗号,分隔:select,insert...

(权限'Select','Insert','Update','Delete','Create','Drop','Grant','References','Index','Alter','CreateView','Show view','Trigger'  )

2)数据库名:

- *.*:所有库

- 数据名.*:某个库中所有表有权限

- 数据库名.表名:某个库的某个表有权限

3)用户名:授权时自定义,要有标识性,保存在mysql.user表里

4)客户端地址:

- @“%”或不设置:代表网络中所有主机

- @“192.168.1.%”:该网段的所有主机

- @“ip地址”:只允许在该ip地址的主机登录

- @“主机名”:保证该主机名可以被解析  如:@”pc1.tarena.com”  //不常用

-@”%.tarena.com”:允许tarena.com区域所有主机登录保证可被解析   //不常用

5)identified by “密码”:可选项,授权用户登录时使用的密码,自定义

6)with  grant option :可选项,让授权用户有授权权限

示例:mysql>grant select on bbsdb.usertab to jim@“192.168.4.1” identifiedby “123” with grant option;

  mysql>grant all on  *.* to root@“192.168.4.205” identified by“123” with grant option; //授权数据库管理员root可以在192.168.4.205上登录数据库

4、登录用户查看自己的权限:mysql>show grants;

数据库管理员查看授权用户的权限信息:mysql>show grants fortom@192.168.4.205

查看授权用户有哪些:mysql>select user,host from mysql.user

5、查看当前登录用户是谁:mysql>select user();

6、授权信息保存在数据库服务器中的mysql库中的表里

7、服务器端和客户端关闭防火墙和SELinux(disable)

客户端登录:#mysql -h数据库服务器IP  -u授权用户名  -p密码

8、授权权限:

a)        授权权限需对mysql库有全部权限

b)       授权权限只能把自己所拥有的权限给别人(授自己有权限的库/表)

c)        如:给开发部经理授权权限,他给部门程序员授权

Grant all on webdb.*to webuser10@”%” identified by “123” with grant option

Grant all on mysql.*to webuser10@“%” identified by “123”

9、授权用户修改自己的登录密码

Set password=password(“新密码”);

10、管理员可重设用户的密码

Set password for 用户名@“客户端地址”=password(“新密码”);

二、撤销用户权限

1、对目标库/表有过授权才能撤销成功

2、有授权权限的用户在客户端登录也可以执行撤销权限

3、撤销命令:

格式:revoke 权限列表 on 数据库名(.表名)  from  用户名@“客户端地址”

数据库名(.表名):这个位置要有过授权

示例:revoke delet on *.*  from  root@“192.168.4.205”

  revoke all  on *.*  from  root@“192.168.4.205” //撤销的是权限,用户仍能登录,all是对库和表的操纵权限不包括授权权限

  revoke grant  option  on *.*  from  root@“192.168.4.205”//撤销授权权限

revoke撤销的是权限,不会删除授权用户信息(仍保存在mysql.user表里),仍能登录4、要彻底删除授权用户,则删除mysql.user表里该授权用户的记录:

delete from mysql.user where user=“用户名”

 


免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

MySQL数据库用户授权管理

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

MySQL数据库用户权限如何管理

这篇文章主要介绍“MySQL数据库用户权限如何管理”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“MySQL数据库用户权限如何管理”文章能帮助大家解决问题。1、用户管理mysql的用户信息保存在了my
2023-07-02

mysql怎么给用户授权某个数据库

在MySQL中,给用户授权某个数据库可以通过以下步骤实现:连接到MySQL数据库服务器:mysql -u root -p创建一个新用户(如果用户不存在的话):CREATE USER 'new_user'@'lo
mysql怎么给用户授权某个数据库
2024-04-09

将数据库的所有权限授予MySQL用户?

首先,使用 CREATE 命令创建用户和密码。语法如下。CREATE USER yourUserName@localhost IDENTIFIED BY yourPassword;将特定数据库的所有权限授予用户的语法如下。GRANT ALL
2023-10-22

MYSQLl给用户授予数据库表权限

给targetUserName用户授予databaseName单个数据库权限grant all privileges on databaseName.* to targetUserName@"%" identified by "targetPassword";
MYSQLl给用户授予数据库表权限
2016-09-19

阿里云数据库数据管理授权怎么设置

简介在使用阿里云数据库时,数据管理授权是非常重要的一环。通过设置合适的数据管理授权,可以控制用户对数据库的访问权限,确保数据的安全性和可靠性。本文将介绍如何设置阿里云数据库数据管理授权,帮助您更好地管理和保护数据库。数据管理授权设置步骤步骤一:登录阿里云数据库管理控制台首先,打开浏览器,输入阿里云数据库管理控制台的网址
阿里云数据库数据管理授权怎么设置
2024-01-14

编程热搜

目录