数据库用户管理怎么实现

74次阅读
没有评论

共计 2288 个字符,预计需要花费 6 分钟才能阅读完成。

这篇文章主要讲解了“数据库用户管理怎么实现”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着丸趣 TV 小编的思路慢慢深入,一起来研究和学习“数据库用户管理怎么实现”吧!

1、用户定义

用户定义:

mysql select user,host,password from mysql.user;

+——+————–+——————————————-+

| user | host  | password  

==================================

user   主机范围

使用某个用户   从哪些主机地址可以访问我的数据库

用户的功能:

1、用来登录 mysql 数据库

2、用来管理数据库对象(库,表)

权限:

  功能:针对不同的用户,设置不同的对象管理能力。

 select updata delete insert creat …

权限的范围:

*.*  : 全局范围

oldboy.* : 单库级别

oldboy.t1 : 单表级别

创建用户并授权:

grant  all  on  wordpress.* to workpress@ 10.0.0.% identified by oldboy123

授权命令 权限   权限范围   用于   主机范围   密码

修改超级管理员用户:root

修改密码:mysqladmin -uroot -p password oldboy123

root@localhost

普通用户:select,updata,delete,insert,create,drop (增删改查)

只针对用户的操作命令:

mysql create user zabbix@ 10.0.0.% identified by oldboy123

Query OK, 0 rows affected (0.01 sec)

mysql drop user root@ 127.0.0.1

Query OK, 0 rows affected (0.00 sec)

mysql select user,host,password from mysql.user;

特殊的删除方法:

mysql delete from mysql.user where user= oldboy and host= localhost

Query OK, 1 row affected (0.00 sec)

mysql flush privileges;

2、用户授权

grant  all  on  wordpress.* to workpress@ 10.0.0.% identified by oldboy123

授权命令 权限   权限范围   用于   主机范围

all 权限:

SELECT,INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES,

INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE,

REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE,

CREATE USER, EVENT, TRIGGER, CREATE TABLESPACE

开发用户权限:(root 用户进行授权)

 grant SELECT,INSERT, UPDATE, DELETE, CREATE, DROP on testdb.* to zabbix@ 10.0.0.%;

使用 zabbix 检查:

mysql create database testdb;

Query OK, 1 row affected (0.00 sec)

mysql show databases;

创建用户并授权:

mysql grant all on *.* to root@ 10.0.0.% identified by oldboy123

Query OK, 0 rows affected (0.00 sec)

mysql select user,host,password from mysql.user;

查询用户的权限:

mysql show grants for zabbix@ 10.0.0.%

创建类似管理员:

mysql show grants for root@ 10.0.0.%

本地超级管理员:有 grants 权限

mysql show grants for root@ localhost

收回权限:

mysql revoke create,drop  on testdb.* from zabbix@ 10.0.0.%

mysql show grants for zabbix@ 10.0.0.%

思考:

grant select on *.* to zabbix@ 10.0.0.%

grant INSERT, UPDATE, DELETE, CREATE, DROP on testdb.* to zabbix@ 10.0.0.%

grant update on testdb.t1 to zabbix@ 10.0.0.%

###

mysql use testdb;

mysql create table t1(id int);

mysql show tables;

mysql insert into t1 values(1);

问:zabbix@ 10.0.0.%
对 t1 表到底有什么权限?

如果对某个用户在不同的数据库级别设置了权限,最终权限权限叠加,加起来的最大权限为准。

建议,不要多范围授权。

感谢各位的阅读,以上就是“数据库用户管理怎么实现”的内容了,经过本文的学习后,相信大家对数据库用户管理怎么实现这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是丸趣 TV,丸趣 TV 小编将为大家推送更多相关知识点的文章,欢迎关注!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-07-15发表,共计2288字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)