2019/5/20星期一//这是mysql的权限问题具体的详情见第三章《mysql用户及赋予用户权限格兰特》
现在有一个需求,就是指定一个用户对一个数据库中的所有表只有只读权限
mysql用户及赋予用户权限格兰特
我们在我们的dev环境的192.168.0.36上进行试验
<代码> @祝辞(没有);选择用户,从mysql.user主机; + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + 用户主机| | | + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + | % | |根 | mysql。会话| localhost | | mysql。sys localhost | | | | |根localhost + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + 4行集(0.00秒) 首先创建一个试验的表 创建数据库大学;//创建数据库字符集utf8mb4大学; 使用大学; 创建一个学生表 创建表的学生( Sno char(9)主键, Sname char(20)独一无二的, Ssex char (2), 圣人int, Sdept char (20) );代码>
插入试验数据
插入学生价值观(200215121,”李勇”,男,20岁,“CS”);
插入学生价值观(100215122,“刘晨','女',19日“CS”);
插入学生价值观(100215123,“王敏','女',18岁,“马”);
插入学生价值观(100215124,”张立”,“男”,19日'是');
<代码> @university>使用大学; 数据库修改 @university>显示表; +----------------------+ | Tables_in_university | +----------------------+ |学生| +----------------------+ 1行集(0.00秒) @university>从学生选择*; + - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - + + 圣人| Sno | Sname | Ssex | | Sdept | + - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - + + 19 | 100215122 |刘晨|女| | CS | 18岁| 100215123 |王敏|女| | | 19 | 100215124 |张立|男| | | | 200215121 |李勇|男20 | CS | | + - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - + + 4行集(0.00秒)代码>
接下来,我们要创建一个用户majihui只对大学库下的所有表有权限。
mysql>帮助格兰特;
名称:“授予”
描述:
语法:格兰特
priv_type [(column_list)]
[, priv_type [(column_list)]]…在[object_type] priv_level
user_specification [, user_specification]…
[需要{没有| ssl_option[[和]ssl_option]…与with_option}]
[…]
object_type:
表
| |函数过程
priv_level:
-
<李>所有
| 。所有库所有表
| db_name。*指定库的所有表
| db_name。tbl_name指定库的指点表
| tbl_name指定一个表
| db_name.routine_name指定一个库的存储过程李>
user_specification:
用户(被【密码】“密码”)
ssl_option:
SSL X509
| |密码'密码'
|发行人“发行人”
|主题“主题”
with_option:
格兰特选择
| MAX_QUERIES_PER_HOUR计数每小时查询几次
| MAX_UPDATES_PER_HOUR计数每小时更新几次
| MAX_CONNECTIONS_PER_HOUR计数每小时链接几次
| MAX_USER_CONNECTIONS计数每小时使用几次
GRANT语句授予特权MySQL用户帐户。格兰特
也可以指定其他账户的特点如使用
安全连接和限制访问服务器资源。使用
格兰特,你必须给予选择特权,您必须
特权授予。
正常情况下,数据库管理员首先使用创建用户创建一个
账户,然后来定义它的特权授予和特点。对于
示例:
创建用户“杰弗里”@“localhost”被“mypass”,
格兰特db1。“杰弗里”@“localhost”;在db2上
格兰特选择。发票“杰弗里”@“localhost”;格兰特
上使用。*“杰弗里”@“localhost”MAX_QUERIES_PER_HOUR 90;
然而,如果一个帐户名为GRANT语句
已经不存在,格兰特可以创造条件下描述在
的讨论NO_AUTO_CREATE_USER SQL模式。
的REVOKE语句与格兰特和使管理员能够
删除账户权限。看到[帮助撤销].
从mysql项目成功执行时,格兰特与
查询响应好,0行受影响。以确定哪些特权源于
操作,使用显示赠款。见[帮助显示赠款)。
的URL: http://dev.mysql.com/doc/refman/5.1/en/grant.html
<代码>首先方法1 方法1: 创建用户“杰弗里”@“localhost”被“mypass”; 格兰特db1。*“杰弗里”@“localhost”; mysql>创建用户oldboy@“localhost”被“oldboy123”;创建一个用户名为卑劣的密码为oldboy123的用户 查询好,0行影响(0.00秒)//此部分在dba第三章有详细解释,请转至第三章创建mysql用户及赋予用户权限* * * * *mysql权限管理