MySQL权限篇之CREATE USER
2016-03-25 11:24
471 查看
权限CREATE USER是global privilege。
该权限可以创建,修改和删除用户。
如:
mysql> show grants for 'ut01'@'%';
+----------------------------------------+
| Grants for ut01@% |
+----------------------------------------+
| GRANT CREATE USER ON *.* TO 'ut01'@'%' | #global privilege只能on *.*,否则报语法错误
+----------------------------------------+
1 row in set (0.00 sec)
mysql>
mysql> select user();
+----------------+
| user() |
+----------------+
| ut01@localhost |
+----------------+
1 row in set (0.00 sec)
mysql> create user 'ut02'@'%';
Query OK, 0 rows affected (0.07 sec)
mysql> alter user 'ut02'@'%' identified by '20127163';
Query OK, 0 rows affected (0.05 sec)
mysql> alter user 'ut02'@'%' PASSWORD EXPIRE;
Query OK, 0 rows affected (0.12 sec)
mysql> alter user 'ut02'@'%' account lock;
Query OK, 0 rows affected (0.03 sec)
mysql> drop user 'ut02'@'%';
Query OK, 0 rows affected (0.03 sec)
mysql> drop user 'ut03'@'%'; #该用户为另外一个super用户所创建,但其同样能够删除
Query OK, 0 rows affected (0.04 sec)
mysql>
ps,mysql里面的schema和oracle的schema含义还是有很大区别的。
oracle的schema是用户和该用户的所有对象的集合。
而mysql的schema仅仅是一个库,和用户没有关系。
也就是说,mysql的schema里的对象(如表,视图,函数,用户等)和用户没有关系。
比如,ut01@%创建了表t1,但是t1表不属于ut@%用户,其只属于某个schema。
它不像oralce里面那样,对象必须依赖某个用户。
mysql没有这层概念。
这样就导致了,用户对某个对象的权限具有相当大的灵活性。
该权限可以创建,修改和删除用户。
如:
mysql> show grants for 'ut01'@'%';
+----------------------------------------+
| Grants for ut01@% |
+----------------------------------------+
| GRANT CREATE USER ON *.* TO 'ut01'@'%' | #global privilege只能on *.*,否则报语法错误
+----------------------------------------+
1 row in set (0.00 sec)
mysql>
mysql> select user();
+----------------+
| user() |
+----------------+
| ut01@localhost |
+----------------+
1 row in set (0.00 sec)
mysql> create user 'ut02'@'%';
Query OK, 0 rows affected (0.07 sec)
mysql> alter user 'ut02'@'%' identified by '20127163';
Query OK, 0 rows affected (0.05 sec)
mysql> alter user 'ut02'@'%' PASSWORD EXPIRE;
Query OK, 0 rows affected (0.12 sec)
mysql> alter user 'ut02'@'%' account lock;
Query OK, 0 rows affected (0.03 sec)
mysql> drop user 'ut02'@'%';
Query OK, 0 rows affected (0.03 sec)
mysql> drop user 'ut03'@'%'; #该用户为另外一个super用户所创建,但其同样能够删除
Query OK, 0 rows affected (0.04 sec)
mysql>
ps,mysql里面的schema和oracle的schema含义还是有很大区别的。
oracle的schema是用户和该用户的所有对象的集合。
而mysql的schema仅仅是一个库,和用户没有关系。
也就是说,mysql的schema里的对象(如表,视图,函数,用户等)和用户没有关系。
比如,ut01@%创建了表t1,但是t1表不属于ut@%用户,其只属于某个schema。
它不像oralce里面那样,对象必须依赖某个用户。
mysql没有这层概念。
这样就导致了,用户对某个对象的权限具有相当大的灵活性。
相关文章推荐
- mysql sql 注入
- 解决内网远程连接MySQL速度慢
- 【MySQL】sync_binlog innodb_flush_log_at_trx_commit 浅析
- mysql优化 explain
- MySQL权限篇之CREATE TEMPORARY TABLES
- Navicat for MySQL安装及使用教程
- MySQL数据库的优化
- 简单的mysql主从搭建及恢复
- MySQL中DATETIME、DATE和TIMESTAMP类型的区别
- mysql 入门操作
- MySql 新建用户,新建数据库,用户授权,删除用户,修改密码
- MySQL权限篇之CREATE ROUTINE与CREATE TABLESPACE
- Mysql授权root用户使用远程客户端连接
- mysql 5.7.11 压缩包安装办法&遇到故障后彻底卸载办法
- MySQL5.5写入中文乱码之处理character_set_server编码
- MySQL数据类型总结
- 【慕课笔记】1-1 初涉MYSQL—MYSQL概述
- mysql sp_add_Index 先判断有没有索引 没有就添加
- MySQL权限篇之CREATE
- MySQL存储引擎介绍