MySQL中文参考手册7(MySQL存取权限系统)grant设置密码password
来源:互联网 作者: 出处:综艺读书 2007-07-18译者:晏子 (clyan@sohu.com)主页:http://linuxdb.yeah.net
6 MySQL 存取权限系统
MySQL有一个先进但非标准的安全/权限系统。本节描述它的工作原理。
6.1 权限系统做什么
|
|
|||
附加的功能包括有一个匿名的用户和对于MySQL特定的功能例如LOAD DATA INFILE进行授权及管理操作的能力。
6.2 MySQL 用户名和口令
由MySQL使用用户名和口令的方法与Unix或Windows使用的方式有很多不同之处:
- MySQL使用于认证目的的用户名,与Unix用户名(登录名字)或Windows用户名无关。缺省地,大多数MySQL客户尝试使用当前Unix用户名作为MySQL用户名登录,但是这仅仅为了方便。客户程序允许用-u或--user选项指定一个不同的名字,这意味着无论如何你不能使得一个数据库更安全,除非所有的MySQL用户名都有口令。任何人可以试图用任何名字连接服务器,而且如果他们指定了没有口令的任何名字,他们将成功。
- MySQL用户名最长可以是16各字符;典型地,Unix用户名限制为8个字符。
- MySQL口令与Unix口令没关系。在你使用登录到一台Unix机器口令和你使用在那台机器上存取一个数据库的口令之间没有必要有关联。
- MySQL加密口令使用了一个Unix登录期间所用的不同算法,见7.4.12 杂项函数一节中描述PASSWORD()和ENCRYPT()函数部分。
6.3 与MySQL服务器连接
当你想要存取一个MySQL服务器时,MySQL客户程序一般要求你指定连接参数:你想要联接的主机、你的用户名和你的口令。例如,mysql客户可以象这样启动(可选的参数被包括在“[”和“]”之间):
shell> mysql [-h host_name][-u user_name][-pyour_pass ]
-h, -u和-p选项的另一种形式是--host=host_name、--user=user_name和--password=your_pass。注意在-p或--password=与跟随它后面的口令之间没有空格。
注意:在命令行上指定一个口令是不安全的!随后在你系统上的任何用户可以通过打类似这样的命令发现你的口令:ps auxww。见4.15.4 选项文件。
对于命令行没有的联接参数,mysql使用缺省值:
- 缺省主机名是localhost。
- 缺省用户名是你的Unix登录名。
- 如果没有-p,则没有提供口令。
这样, 对一个Unix用户joe,下列命令是等价的:
shell>mysql -h localhost -u joe
shell>mysql -h localhost
shell>mysql -u joe
shell>mysql
其它MySQL客户程序有同样表现。
在Unix系统上,当你进行一个连接时,你可以指定要使用的不同的缺省值,这样你不必每次在你调用一个客户程序是在命令行上输入他们。这可以有很多方法做到:
你能在你的主目录下“.my.cnf”的配置文件的[client]小节里指定连接参数。文件的相关小节看上去可能像这样:
[client]
host=host_name
user=user_name
password=your_pass
见4.15.4 选项文件。
你可以用环境变量指定连接参数。主机可用MYSQL_HOST指定,MySQL用户名字可用USER指定(仅对 Windows),口令可用MYSQL_PWD指定(但是这不安全,见下一节) 。
如果连接参数以多种方法被指定,在命令行上被指定的值优先于在配置文件和环境变量中指定的值,而在配置文件指定的值优先于在环境变量指定的值。
6.4 使你的口令安全
以一种暴露的可被其他用户发现的方式指定你的口令是不妥当的。当你运行客户程序时,你可以使用下列方法指定你的口令,还有每个方法的风险评估:
- 使用一个在命令行上-pyour_pass或--password=your_pass的选项。这很方便但是不安全,因为你的口令对系统状态程序(例如ps)变得可见,它可以被其他的用户调用来显示命令行。(一般MySQL客户在他们的初始化顺序期间用零覆盖命令行参数,但是仍然有一个短暂间隔时间内参数值可见的。)
- 使用一个-p或--password选项(没有指定your_pass值)。在这种情况下,客户程序请求来自终端的口令:
shell>mysql - u user_name - p
Enter password: ********
客户回应“*”字符到作为输入你的口令的终端使得旁观者不能看见它。因为它对其他用户不可见,与在命令行上指定它相比,这样进入你的口令更安全。然而,这个输入一个口令的方法仅仅为你交互式运行程序是合适的。如果你想要从非交互式运行的一个脚本调用一个客户,就没有从终端输入入口令的机会。
在一个配置文件中存储你的口令。例如,你可你的主目录的“.my.cnf”文件中的[client]节列出你的口令:
[client]
password=your_pass
如果你在“.my.cnf”里面存储口令,文件应该不是组或世界可读或可写的。保证文件的存取模式是400或600。见4.15.4 选项文件。
你可在MYSQL_PWD环境变量中存储口令,但是这个方法必须想到是极不安全的且应该不使用。ps的某些版本包括显示运行进程的环境的选项;如果你设定MYSQL_PWD,你的口令将对所有人是显而易见的,甚至在没有这样一个版本的ps系统上,假设没有其他方法观察到进程环境是不明智的。
总之,最安全的方法是让客户程序提示口令或在一个适当保护的“.my.cnf”文件中指定口令。
·系统优化大全 (13868篇文章)
·系统安全设置 (18473篇文章)
·MySQL数据备份 (1667篇文章)
·系统安装手册 (16348篇文章)
·系统备份专题 (13473篇文章)
·Cisco密码恢复专题 (2681篇文章)
·Windows权限设置 (7758篇文章)
·MySQL (1573篇文章)
·MySQL安全 (8220篇文章)
·防止sql注入的简单方法 (1903次浏览)
·IIS、ASP.NET和SQLServer的安全性问题 (112次浏览)
·SQL Server 2005对海量数据处理 (47次浏览)
·50种方法巧妙优化SQL Server数据库 (37次浏览)
·SQL Server连接VFP数据库的实现 (35次浏览)
·SQL循序渐进(15)IN 和 BETWEEN 条件运算符 (27次浏览)
·解决SQL Server虚拟内存不足情况 (17次浏览)
·打造SQL Server2000的安全策略 (16次浏览)
·两种SQL Server灾难恢复方法 (9次浏览)
·防止sql注入的简单方法 (1903次浏览)
·SQL Server开发者Oracle快速入门 (181次浏览)
·精细分析SQL server服务器的内存配置 (155次浏览)
·IIS、ASP.NET和SQLServer的安全性问题 (112次浏览)
·利用标准SQL语句实现查询记录分页 (55次浏览)
·比较SQL Server约束和DML触发器 (49次浏览)
·SQL Server 2005对海量数据处理 (47次浏览)
·初探 SQL Server 2008 “Katmai ” (42次浏览)
·如何对SQL Server数据表和数据库进行迭代操作 (41次浏览)
·防止sql注入的简单方法 (1903次浏览)
·MS-SQL开发常用汇总和t-sql技巧集锦 (404次浏览)
·SQL Server开发者Oracle快速入门 (181次浏览)
·轻松维护SQL Server 2005数据库 (160次浏览)
·精细分析SQL server服务器的内存配置 (155次浏览)
·教你如何在SQL Server计算列和平均值 (137次浏览)
·SQL Server 查询分析器快捷键集合 (123次浏览)
·解析SQL Server数据在不同数据库中的应用 (118次浏览)
·IIS、ASP.NET和SQLServer的安全性问题 (112次浏览)
·MySQL中文参考手册7(MySQL存取权限系统)grant设置 07-18
·IIS、ASP.NET和SQLServer的安全性问题 07-16
·SQL Server连接VFP数据库的实现 07-16
·SQL循序渐进(15)IN 和 BETWEEN 条件运算符 07-15
·解决SQL Server虚拟内存不足情况 07-13
·50种方法巧妙优化SQL Server数据库 07-11
·SQL Server 2005对海量数据处理 07-10
·打造SQL Server2000的安全策略 07-10
·SQL Server怪辟:异常与孤立事务 07-10
|
|||
| ·ACDSEE专题教程-下载使用 ·迅雷专题教程-下载使用 ·Windows XP频道 ·Windows Vista频道 ·Windows 2000频道 ·win2003频道 ·Freebsd频道 ·Oracle频道 |
·Linux频道 ·Windows频道 ·邮件服务器专题 ·协议大全 ·数据恢复指南教程 ·FreeBSD使用教程 ·Linux数据库宝典 ·Linux基础知识 |
||
| · 秘密:Vista隐蔽的动态屏保 · 腾讯开发新电子宠物--QQ熊 · 惠普否认2999元PC有价无货 |
· 驱逐Win系统“流氓”文件 · WinXP中获取未使用的IP地址 · 尝试format C:格式化硬盘? |
| · 在DOS下恢复回收站中的文件 · 拯救WinXP崩溃的救命稻草 · Linux系统中超级权限的应用 |
· 搜狗PK谷歌:谁能代言拼... · 昨日重现,一键GHOST轻松.. · 实现Web迅雷在空闲时杀毒 |
| · AVIFile函数制做AVI文件 · VC中链接动态链接库的方法 · 熊猫烧香核心源码(Delphi) |
· DateDiff函数祥解 · JavaScript去除空格的三种 · js效果 图片加载进度实时.. |
| · SQL Server数据库优化方案 · Oracle的初学者入门心得 · JSP连接Mysql数据库 |
· Photoshop为美女做艺术处理 · 用Freehand创建发光字特效 · 设计自己的个性QQ动态表情 |




