mysql数据库分配、取消权限
来源:互联网 发布:域名注册量查询 编辑:程序博客网 时间:2024/05/22 08:13
工作中,有时候会遇到分享本地数据库给同事使用的情况。下面是可能用到的一些操作。相互借鉴。
分配用户权限
格式
分配用户权限时,可以控制用户对数据的增删改查等,也可以控制用户只可以查看数据库中的具体表
GRANT ALL PRIVILEGES ON database.table TO user@ip IDENTIFIED BY 'password';
eg:
GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP ON database1.investor TO ck@localhost IDENTIFIED BY '000000';
此例子表示,分配给ck(这个用户可以已经创建,也可以未创建)用户在本地(localhost)的database1数据库中investor表拥有SELECT、INSERT、UPDATE、DELETE、CREATE、DROP 这几个操作权限;没有其他表的其他任何权限。连接数据库的密码是:000000
当然更多的时候我们还是分配足够的权限给他人使用。此时可以使用如下语句:
GRANT ALL PRIVILEGES ON *.* TO root@localhost IDENTIFIED BY '123456'
此语句表示,分配所有权限给root这个用户在本地的所有数据库的所有表的所有权限。连接数据库的密码是:123456
取消分配权限
格式
取消用户权限时,可以控制用户对数据的增删改查等,也可以控制用户只可以查看数据库中的具体表
Revoke privileges (columns) on what from user ;
eg:
REVOKE SELECT, INSERT, UPDATE, DELETE, CREATE, DROP ON database1.investor from ck@localhost;
此例子与上述分配权限例子一致,只是这边是取消权限。
取消所有数据库的所有权限时:
Revoke all on *.* from ck@localhost;
取消本地用户ck在所有数据库的所有权限。
取消用户权限后,访问会出现如图提示:
删除数据库用户
格式
Delete from user where user = "user_name" and host = "host_name" ;
eg:
DELETE from mysql.`user` WHERE `User`='ck' AND `Host` = 'localhost';FLUSH PRIVILEGES;
这边要说明一下的是,格式中user在mysql中表现形式是:mysql.user
。
此语句表示,删除用户ck在本地的访问权限(用户ck可能有三个ip使用,这样只是控制某一个ip的权限)。
FLUSH PRIVILEGES是告诉数据库服务,刷新权限,再次请求时,需要重新拉去权限。
删除所有用户这个还是不教了,怕你手快,怕你骂人。
删除用户后,访问会出现如图提示:
查看所有用户:
SELECT * from mysql.`user`;
可通过查询的语句,知道某一用户的权限。
参考文章:http://www.2cto.com/database/201309/242823.html
- mysql数据库分配、取消权限
- 【MySQL】创建普通用户,分配权限,取消权限
- mysql数据库权限分配-参考
- mysql数据库添加用户及分配权限
- linux数据库分配权限后mysql数据库消失解决办法
- 数据库权限分配探讨
- 数据库权限分配探讨
- 数据库权限分配探讨
- 数据库权限分配探讨
- Mysql 添加用户、删除用户与 数据库权限分配
- mysql 创建一个用户分配一个数据库权限
- 关于MySQL权限分配
- mysql分配权限
- mysql grant 权限分配
- MySQL权限分配
- mysql grant 权限分配
- MySQL权限分配
- MySQL权限分配
- 杭电OJ1020 Encoding
- 把JTable的表头也就是标题行给隐藏掉
- HTTP协议的8种请求类型介绍
- Quartz Demo
- C++的开源库--boost
- mysql数据库分配、取消权限
- nginx(转)
- Mesos源码分析(2): Mesos Master的启动之一
- 控件收集
- Java 修饰符
- BroadcastReceiver探讨之动态广播注册流程
- 【uoj218】火车管理 题解&代码(C++)
- 动态规划之最长公共子序列和最长公共字串,最大子序列和
- iOS与网页JS交互,看我就够了