一、MySQL用户管理
用户定义:
user | 主机范围 |
---|---|
使用某个用户 | 从哪个(些)地址访问我的数据库 |
用户的功能:
1、用来登录mysql数据库
2、用来管理数据库对象(库、表)
权限
功能:针对不同用户设置对不同对象管理能力
select update delete insert create drop 。。。
权限范围:
*.* | :全局范围 |
---|---|
oldboy.* | :单库级别 |
oldboy.t1 | : 单表级别 |
grant all on wordpress.* to wordpress@'10.0.0.%' identified by 'oldboy123';
权限 权限范围 用户名 密码
set password for root@localhost = password('123456'); #修改用户密码
修改密码(两种)
mysqladmin -u用户名 -p旧密码 password 新密码
alter user 'root'@'%' identified by 'N9bZeqAl';
创建用户
create user zabbix@'10.0.0.%' identified by '123';
select user,host,password from mysql.user;
- 删除掉无用的用户
drop user root@'db02';
drop user root@'127.0.0.1';
drop user root@'::1';
drop user ''@'localhost';
drop user ''@'db02';
用户授权
-- 用户授权
grant all on testdb.* to zabbix@'10.0.0.%';
权限 权限范围 用户
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.%'; #收回全部权限
思考:
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.%';
问:zabbix@'10.0.0.%'对T1表到底有什么权限?
结论,如果对某个用户在不同数据库级别都设置了权限,最终权限相叠加,及加起来的最大权限为准。
建议:尽量不要多范围授权。
mysql接口自带的功能
1、\h 或 help 或 ?
2、\G
3、\T 或 tee
4、\c 或 CTRL+c
5、\s 或 status
6、\. 或 source
执行外部SQL脚本:二进制日志截取、备份出来的SQL脚本
7、\u 或use
标签:10.0,05,用户,.%,zabbix,user,Mysql,权限
From: https://www.cnblogs.com/ejjw/p/17930495.html