1 / 3
文档名称:

Mysql入门系列:MYSQL用户帐号管理--.doc

格式:doc   大小:53KB   页数:3页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

Mysql入门系列:MYSQL用户帐号管理--.doc

上传人:pppccc8 2018/6/10 文件大小:53 KB

下载得到文件列表

Mysql入门系列:MYSQL用户帐号管理--.doc

文档介绍

文档介绍:Mysql入门系列:MYSQL用户帐号管理>>
MySQL管理员应该知道怎样通过指定哪些用户可连接到服务器、从哪里进行连接,以及在连接时做什么,来设置MySQL用户账号。:GRANT 语句创建MySQL用户并指定其权限,REVOKE 语句删除权限。这两个语
句充当mysql数据库中的授权表的前端,并提供直接操纵这些表内容的可选择的方法。GRANT 和REVOKE 语句影响以下四个表: 授权表内容user可连接到服务器的用户和他们拥有的任何全局特权db数据库级的特权tables _ priv表级特权c o l um n s _ priv列级特权还有第五个授权表( host),但它不受GRANT 或REVOKE 的影响。
当您为某个用户发布GRANT 语句时,应在user 表中为该用户创建一个项。如果该语句指定了所有全局特权(管理权限或用于所有数据库的权限),则这些指定也被记录在user 表中。如果指定了数据库、表或列的权限,它们将记录在db、tables_priv 和columns_priv 表中。
使用GRANT 和REVOKE 语句比直接修改授权表更容易。但是,建议您最好通过阅读第12章来补充本章的内容,第12章中详细讨论了授权表。这些表非常重要,作为一位管理员应该了解这些表是怎样在GRANT 和REVOKE 语句级上工作的。
本节下面的部分将讨论如何设置MySQL用户的账号和授权,还将介绍如何取消权限以及从授权表中删除全部用户,并且将考虑一个困扰许多新的MySQL管理员的难题。
ess 和mysql_setpermission 脚本,它们是MySQL分发包的组成部分。这些是Perl 的脚本,它们提供了设置用户账号的GRANT 语句的代用品。mysql_setpermission 需要具有DBI 的支持环境。
创建新用户和授权
GRANT 语句的语法如下:
GRANT privileges (columns)
ON ns 权限适用的列。这是可选的,只来设置列专有的权限。如果命名多于一个列,则用逗号分开。
p_db.* TO borislocalhost IDENTFIEDBY ruby
GRANT ALL ON samp_db.* TO . IDENTFIEDBY quartz
(符号samp_db.* 含义是在samp_db 数据库中的所有表)在另一个极端,您可能会有一个用户m a x,他周游世界并需要能够从世界各地的主机中进行连接。在这种情况下,无论他从哪里连接您都将允许:
GRANT ALL ON samp_db.* TO max% IDENTFIEDBY diamond
%字符起通配符的作用,与LIKE 模式匹配的含义相同,在上个语句中,它的意思是任何主机。如果您根本不给出主机名部分,则它与指定%的含义相同。因此, max 和max% 是等价的。这是设置一个用户最容易的方法,但安全性最小。
要想采取妥协的办法,可允许用户在一组有限的主机中进行连接。例如,要使mary 从snake. 域的任何主机中进行连接,可使用%.snake. 主机说明符:
GRANT ALL ON samp_db.* T