ITPub博客

首页 > 大数据 > 数据分析 > 好程序员大数据培训分享算法系列数据库用户管理

好程序员大数据培训分享算法系列数据库用户管理

原创 数据分析 作者:好程序员 时间:2020-06-03 00:59:48 0 删除 编辑

  好程序员 大数据培训分享 算法系列 数据库用户管理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 表到底有什么权限?

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

建议,不要多范围授权。


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69913864/viewspace-2695819/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2019-03-20

  • 博文量
    342
  • 访问量
    195090