学习手册之MySQL存取权限系统
2008-04-30 07:27
295 查看
6MySQL存取权限系统
MySQL有一个先进但非标准的/权限系统。本节描述它的工作原理。
6.1权限系统做什么
MySQL权限系统的主要功能是证实连接到一台给定主机的一个用户,并且赋予该用户在一个数据库上select、insert、update和delete的权限。
附加的功能包括有一个匿名的用户和对于MySQL特定的功能例如LOADDATAINFILE进行授权及管理操作的能力。
6.2MySQL用户名和口令
由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[-hhost_name][-uuser_name][-pyour_pass]
-h,-u和-p选项的另一种形式是--host=host_name、--user=user_name和--password=your_pass。注意在-p或--password=与跟随它后面的口令之间没有空格。
注意:在命令行上指定一个口令是不安全的!随后在你系统上的任何用户可以通过打类似这样的命令发现你的口令:psauxww。见4.15.4选项文件。
对于命令行没有的联接参数,MySQL使用缺省值:
*缺省主机名是localhost。
*缺省用户名是你的Unix登录名。
*如果没有-p,则没有提供口令。
这样,对一个Unix用户joe,下列命令是等价的:
shell>MySQL-hlocalhost-ujoe
shell>MySQL-hlocalhost
shell>MySQL-ujoe
shell>MySQL
其它MySQL客户程序有同样表现。
在Unix系统上,当你进行一个连接时,你可以指定要使用的不同的缺省值,这样你不必每次在你调用一个客户程序是在命令行上输入他们。这可以有很多方法做到:上一页
MySQL有一个先进但非标准的/权限系统。本节描述它的工作原理。
6.1权限系统做什么
MySQL权限系统的主要功能是证实连接到一台给定主机的一个用户,并且赋予该用户在一个数据库上select、insert、update和delete的权限。
附加的功能包括有一个匿名的用户和对于MySQL特定的功能例如LOADDATAINFILE进行授权及管理操作的能力。
6.2MySQL用户名和口令
由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[-hhost_name][-uuser_name][-pyour_pass]
-h,-u和-p选项的另一种形式是--host=host_name、--user=user_name和--password=your_pass。注意在-p或--password=与跟随它后面的口令之间没有空格。
注意:在命令行上指定一个口令是不安全的!随后在你系统上的任何用户可以通过打类似这样的命令发现你的口令:psauxww。见4.15.4选项文件。
对于命令行没有的联接参数,MySQL使用缺省值:
*缺省主机名是localhost。
*缺省用户名是你的Unix登录名。
*如果没有-p,则没有提供口令。
这样,对一个Unix用户joe,下列命令是等价的:
shell>MySQL-hlocalhost-ujoe
shell>MySQL-hlocalhost
shell>MySQL-ujoe
shell>MySQL
其它MySQL客户程序有同样表现。
在Unix系统上,当你进行一个连接时,你可以指定要使用的不同的缺省值,这样你不必每次在你调用一个客户程序是在命令行上输入他们。这可以有很多方法做到:上一页
相关文章推荐
- MySQL中文参考手册7(MySQL 存取权限系统) grant 设置密码 password
- 中文参考手册7(MySQL存取权限系统)grant设置密码password
- MySQL中文参考手册7(MySQL 存取权限系统) grant 设置
- MYSQL入门学习之二十八:MySQL权限系统简介
- MySQL - 存取权限系统
- 中文参考手册---6MySQL存取权限系统
- MySQL学习笔记之二十二 权限系统工作原理
- 6 MySQL 存取权限系统
- MySQL 存取权限系统
- MySQL的存取权限系统
- Linux学习日记 —— 8.3 权限管理-文件系统属性chattr权限
- MySQL学习系列之创建用户并分配权限(二)
- C# ASP.NET 走火入魔通用权限管理系统组件V3.2试用版下载地址【含数据库设计文档、使用手册】
- 详解通过Mysql弱口令得到系统权限
- 基于springboot+redis+bootstrap+mysql开发一套属于自己的分布式springcloud云权限架构(十七)【权限架构系统(基础框架搭建)】
- win2003系统下apache、php、mysql安装以及虚拟主机和目录权限设置(转载)
- UNIX系统的文件属性和存取权限
- mysql dba系统学习(23)必须明白的sql知识
- mysql权限存取过程
- 【转】mysql学习--mac 10.11.1 系统 如何添加环境变量