mysql怎么创建管理员 mysql管理员权限( 六 )


GRANT SELECT ON samp_db.member TO bill@localhost INDETIFIED BY "rock"
中.国.站.长.站
GRANT UPDATE (expiration) ON samp_db. member TO bill@localhost 中国站长_站,为中文网站提供动力
第一条语句授予对整个member表的读权限并设置了一个口令,第二条语句增加了UPDATE权限,当只对expiration列 。没必要再指定口令,因为第一条语句已经指定了 。
Www^Chinaz^com
如果你想对多个列授予权限,指定一个用逗号分开的列表 。例如,对assistant用户增加member表的地址字段的UPDATE权限,使用如下语句,新权限将加到用户已有的权限中:
[中国站长站]
GRANT UPDATE (street,city,state,zip) ON samp_db TO assistant@localhost
中国.站.长站
通常,你不想授予任何比用户确实需要的权限宽的权限 。然而,当你想让用户能创建一个临时表以保存中间结果,但你又不想让他们在一个包含他们不应修改内容的数据库中这样做时 , 发生了要授予在一个数据库上的相对宽松的权限 。你可以通过建立一个分开的数据库(如tmp)并授予开数据库上的所有权限来进行 。例如,如果你想让来自mars.net域中主机的任何用户使用tmp数据库,你可以发出这样的GRANT语句:
中.国站长站
GRANT ALL ON tmp.* TO ""@mars.net
Chinaz^com
在你做完之后,用户可以创建并用tmp.tbl_name形式引用tmp中的表(在用户指定符中的""创建一个匿名用户 , 任何用户均匹配空白用户名) 。中.国站长站
1.3 用户应该被允许管理权限吗?
中.国.站.长.站
你可以允许一个数据库的拥有者通过授予数据库上的所有拥有者权限来控制数据库的访问,在授权时,指定WITH GRANT OPTION 。例如:如果你想让alicia能从big.corp.com域的任何主机连接并具有sales数据库中所有表的管理员权限,你可以用如下GRANT语句:
[中国站长站]
GRANT ALL ON sales.* TO alicia@%.big.corp.com INDETIFIED BY "applejuice" WITH GRANT OPTION 中国站.长.站
在效果上WITH GRANT OPTION子句允许你把访问授权的权利授予另一个用户 。要注意 , 拥有GRANT权限的两个用户可以彼此授权 。如果你只给予了第一个用户SELECT权限,而另一个用户有GRANT加上SELECT权限,那么第二个用户可以是第一个用户更“强大” 。中国站长_站,为中文网站提供动力
2 撤权并删除用户
Chinaz_com
要取消一个用户的权限,使用REVOKE语句 。REVOKE的语法非常类似于GRANT语句,除了TO用FROM取代并且没有INDETIFED BY和WITH GRANT OPTION子句: 中国站.长站
REVOKE privileges (columns) ON what FROM user 中国.站.长站
user部分必须匹配原来GRANT语句的你想撤权的用户的user部分 。privileges部分不需匹配 , 你可以用GRANT语句授权 , 然后用REVOKE语句只撤销部分权限 。
中.国站长站
REVOKE语句只删除权限 , 而不删除用户 。即使你撤销了所有权限,在user表中的用户记录依然保留,这意味着用户仍然可以连接服务器 。要完全删除一个用户 , 你必须用一条DELETE语句明确从user表中删除用户记录:
中国站.长.站
%mysql -u root MySQL
MySQLDELETE FROM user
-WHERE User="user_name" and Host="host_name";
MySQLFLUSH PRIVILEGES; 中.国站长站
DELETE语句删除用户记录,而FLUSH语句告诉服务器重载授权表 。(当你使用GRANT和REVOKE语句时,表自动重载 , 而你直接修改授权表时不是 。[中国站长站]
如何在MYSQL中用命令添加一个超级管理员root账号下
use mysql;
【mysql怎么创建管理员 mysql管理员权限】insert into user (user,password) values(;账号','密码');

推荐阅读