mysql的⽤户设置权限MySQL 赋予⽤户权限命令的简单格式可概括为:
grant 权限 on 数据库对象 to ⽤户
⼀、grant 普通数据⽤户,查询、插⼊、更新、删除数据库中所有表数据的权利。
grant select on testdb.* to common_user@’%’
grant insert on testdb.* to common_user@’%’
grant update on testdb.* to common_user@’%’
grant delete on testdb.* to common_user@’%’
或者,⽤⼀条 MySQL 命令来替代:
grant select, insert, update, delete on testdb.* to common_user@’%’
⼆、grant 数据库开发⼈员,创建表、索引、视图、存储过程、函数。。。等权限。
grant 创建、修改、删除 MySQL 数据表结构权限。
grant create on testdb.* to developer@’192.168.0.%’;
grant alter on testdb.* to developer@’192.168.0.%’;sqlserver2008修改数据库名称
grant drop on testdb.* to developer@’192.168.0.%’;
grant 操作 MySQL 外键权限。
grant references on testdb.* to developer@’192.168.0.%’;
grant 操作 MySQL 临时表权限。
grant create temporary tables on testdb.* to developer@’192.168.0.%’;
grant 操作 MySQL 索引权限。
化妆品轮播图素材grant index on testdb.* to developer@’192.168.0.%’;
grant 操作 MySQL 视图、查看视图源代码权限。
grant create view on testdb.* to developer@’192.168.0.%’;
wev游戏源码grant show view on testdb.* to developer@’192.168.0.%’;
grant 操作 MySQL 存储过程、函数权限。
grant create routine on testdb.* to developer@’192.168.0.%’; — now, can show procedure status grant alter routine on testdb.* to developer@’192.168.0.%’; — now, you can drop a procedure grant execute on testdb.* to developer@’192.168.0.%’;
三、grant 普通 DBA 管理某个 MySQL 数据库的权限。
grant all privileges on testdb to dba@’localhost’
其中,关键字 “privileges” 可以省略。
四、grant ⾼级 DBA 管理 MySQL 中所有数据库的权限。
grant all on *.* to dba@’localhost’
五、MySQL grant 权限,分别可以作⽤在多个层次上。
1. grant 作⽤在整个 MySQL 服务器上:
grant select on *.* to dba ; — dba 可以查询 MySQL 中所有数据库中的表。
assignment例句grant all on *.* to dba ; — dba 可以管理 MySQL 中的所有数据库
2. grant 作⽤在单个数据库上:
grant select on testdb.* to dba ; — dba 可以查询 testdb 中的表。
3. grant 作⽤在单个数据表上:
grant select, insert, update, delete ders to dba ;
4. grant 作⽤在表中的列上:
grant select(id, se, rank) on testdb.apache_log to dba ;
5. grant 作⽤在存储过程、函数上:
mysql查看所有存储过程grant execute on procedure testdb.pr_add to ‘dba’@'localhost’
grant execute on function testdb.fn_add to ‘dba’@'localhost’
六、查看 MySQL ⽤户权限
查看当前⽤户(⾃⼰)权限:
show grants;
查看其他 MySQL ⽤户权限:
show grants for dba ;
七、撤销已经赋予给 MySQL ⽤户权限的权限。
revoke 跟 grant 的语法差不多,只需要把关键字 “to” 换成 “from” 即可:
grant all on *.* to dba ;
revoke all on *.* from dba ;
⼋、MySQL grant、revoke ⽤户权限注意事项
1. grant, revoke ⽤户权限后,该⽤户只有重新连接 MySQL 数据库,权限才能⽣效。
2. 如果想让授权的⽤户,也可以将这些权限 grant 给其他⽤户,需要选项 “grant option“
grant select on testdb.* to dba with grant option;
这个特性⼀般⽤不到。实际中,数据库权限最好由 DBA 来统⼀管理。
=======================================================================================
关于mysql的⽤户管理,笔记
1、创建新⽤户
通过root⽤户登录之后创建
>> grant all privileges on *.* to testuser@localhost identified by "123456" ; // 创建新⽤户,⽤户名为testuser,密码为123456 ;
>> grant all privileges on *.* to testuser@localhost identified by "123456" ; // 设置⽤户testuser,可以在本地访问mysql
>> grant all privileges on *.* to testuser@"%" identified by "123456" ; // 设置⽤户testuser,可以
在远程访问mysql
>> flush privileges ; // mysql 新设置⽤户或更改密码后需⽤flush privileges刷新MySQL的系统权限相关表,否则会出现拒绝访问,还有⼀种⽅法,就是重新启动mysql服务器,来使新设置⽣效
2、设置⽤户访问数据库权限
>> grant all privileges on test_db.* to testuser@localhost identified by "123456" ; // 设置⽤户testuser,只能访问数据库
test_db,其他数据库均不能访问;
>> grant all privileges on *.* to testuser@localhost identified by "123456" ; // 设置⽤户testuser,可以访问mysql上的所有数据库;
>> grant all privileges on test_db.user_infor to testuser@localhost identified by "123456" ; // 设置⽤户testuser,只能访问数据库test_db的表user_infor,数据库中的其他表均不能访问;
3、设置⽤户操作权限
>> grant all privileges on *.* to testuser@localhost identified by "123456" WITH GRANT OPTION ; //设置⽤户testuser,拥有所有的操作权限,也就是管理员;
vbs如何整人 >> grant select on *.* to testuser@localhost identified by "123456" WITH GRANT OPTION ; //设置⽤户testuser,只拥有【查询】操作权限;
>> grant select,insert on *.* to testuser@localhost identified by "123456" ; //设置⽤户testuser,只拥有【查询\插⼊】操作权限;
>> grant select,insert,update,delete on *.* to testuser@localhost identified by "123456" ; //设置⽤户testuser,只拥有【查询\插⼊】操作权限;
>> REVOKE select,insert ON what FROM testuser //取消⽤户testuser的【查询\插⼊】操作权限;
4、设置⽤户远程访问权限
>> grant all privileges on *.* to testuser@“192.168.1.100” identified by "123456" ; //设置⽤户testuser,只能在客户端IP为
192.168.1.100上才能远程访问mysql ;
5、关于root⽤户的访问设置
设置所有⽤户可以远程访问mysql,修改myf配置⽂件,将bind-address = 127.0.0.1前⾯加“#”注释掉,这样就可以允许其他机器远程访问本机mysql了;
>> grant all privileges on *.* to root@"%" identified by "123456" ; // 设置⽤户root,可以在远程访问mysql
>> select host,user from user; //查询mysql中所有⽤户权限
关闭root⽤户远程访问权限
>> delete from user where user="root" and host="%" ; //禁⽌root⽤户在远程机器上访问mysql
>> flush privileges ; //修改权限之后,刷新MySQL的系统权限相关表⽅可⽣效
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论