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


Chinaz.com
1、创建用户并授权 Chinaz.com
GRANT语句的语法看上去像这样:
以下为引用的内容:
GRANT privileges (columns)
ON what
TO user IDENTIFIED BY "password"
WITH GRANT OPTION
要使用该语句,你需要填写下列部分:
中国.站.长站
privileges 站长.站
授予用户的权限,下表列出可用于GRANT语句的权限指定符:
中国站.长.站
上表显示在第一组的权限指定符适用于数据库、表和列,第二组数管理权限 。一般 , 这些被相对严格地授权,因为它们允许用户影响服务器的操作 。第三组权限特殊,ALL意味着“所有权限”,UASGE意味着无权限,即创建用户,但不授予权限 。Www^Chinaz^com
columns
中国.站长站
权限运用的列,它是可选的 , 并且你只能设置列特定的权限 。如果命令有多于一个列,应该用逗号分开它们 。
中国站长.站
what
站长.站
权限运用的级别 。权限可以是全局的(适用于所有数据库和所有表)、特定数据库(适用于一个数据库中的所有表)或特定表的 。可以通过指定一个columns字句是权限是列特定的 。Www@Chinaz@com
user 中国站长_站,为中文网站提供动力
权限授予的用户 , 它由一个用户名和主机名组成 。在MySQL中 , 你不仅指定谁能连接,还有从哪里连接 。这允许你让两个同名用户从不同地方连接 。MySQL让你区分他们,并彼此独立地赋予权限 。
中国.站长站
MySQL中的一个用户名就是你连接服务器时指定的用户名,该名字不必与你的Unix登录名或Windows名联系起来 。缺省地,如果你不明确指定一个名字,客户程序将使用你的登录名作为MySQL用户名 。这只是一个约定 。你可以在授权表中将该名字改为nobody , 然后以nobody连接执行需要超级用户权限的操作 。
[中国站长站]
password Www_Chinaz_com
赋予用户的口令,它是可选的 。如果你对新用户没有指定IDENTIFIED BY子句,该用户不赋给口令(不安全) 。对现有用户,任何你指定的口令将代替老口令 。如果你不指定口令,老口令保持不变,当你用IDENTIFIED BY时,口令字符串用改用口令的字面含义,GRANT将为你编码口令,不要象你用SET PASSWORD 那样使用password()函数 。中国站长_站,为中文网站提供动力
WITH GRANT OPTION子句是可选的 。如果你包含它,用户可以授予权限通过GRANT语句授权给其它用户 。你可以用该子句给与其它用户授权的能力 。[中国站长站]
用户名、口令、数据库和表名在授权表记录中是大小写敏感的,主机名和列名不是 。Www~Chinaz~com
一般地,你可以通过询问几个简单的问题来识别GRANT语句的种类:
中国.站长站
谁能连接 , 从那儿连接?
Chinaz.com
用户应该有什么级别的权限,他们适用于什么?
中国站长_站,为中文网站提供动力
用户应该允许管理权限吗? 中国站长.站
下面就讨论一些例子 。站.长站
1.1 谁能连接,从那儿连接?
Chinaz@com
你可以允许一个用户从特定的或一系列主机连接 。有一个极端,如果你知道降职从一个主机连接 , 你可以将权限局限于单个主机:
GRANT ALL ON samp_db.* TO boris@localhost IDENTIFIED BY "ruby"
中国站.长.站
GRANT ALL ON samp_db.* TO fred@res.mars.com IDENTIFIED BY "quartz" 中国站长.站
(samp_db.*意思是“samp_db数据库的所有表)另一个极端是,你可能有一个经常旅行并需要能从世界各地的主机连接的用户max 。在这种情况下,你可以允许他无论从哪里连接:

推荐阅读