mysql用户管理

msyql用户定义:

使用某个用户 从哪个(些)地址访问我的数据库

主机范围

单独IP:‘10.0.0.200‘
一个网段:‘10.0.0.%‘ --->10.0.0.1-->10.0.0.254
一个地址范围:‘10.0.0.5%‘ ---->50-59

用户的功能:

1、用来登录mysql数据库
2、用来管理数据库对象(库、表)


用户权限
功能:针对不同用户设置对不同对象管理能力
如select update delete insert create ……

权限范围:

. :全局范围
oldboy.* :单库级别
oldboy.t1 : 单表级别

授权示例:
grant all on wordpress.* to wordpress@‘10.0.0.%‘ identified by ‘123456‘;

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

-- 开发用户:
grant SELECT,INSERT, UPDATE, DELETE, CREATE, DROP on testdb.* to zabbix@‘10.0.0.%‘;

-- 创建用户并授权
grant all on . to root@‘10.0.0.%‘ identified by ‘123‘;

-- 查询用户权限

show grants for zabbix@‘10.0.0.%‘;

show grants for root@‘10.0.0.%‘;

-- 收回权限

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

revoke all on testdb.* from zabbix@‘10.0.0.%‘;

建议:尽量不要多范围授权。
因为如果对某个用户在不同数据库级别都设置了权限,最终权限相叠加,及加起来的最大权限为准。


删除危险无用的用户
drop user root@‘db02‘;
drop user root@‘127.0.0.1‘;
drop user root@‘::1‘;
drop user ‘‘@‘localhost‘;
drop user ‘‘@‘db02‘;

相关文章