mysql中权限参数说明
发布:smiling 来源: PHP粉丝网 添加日期:2014-09-25 15:17:08 浏览: 评论:0
权限是mysql中一个非常重要的功能,我们针对不用的用户会设置不同的权限,这样可以保证mysql数据库安全的运行,下面我来分享一些mysql权限参考介绍.
1 授权表范围列的大小写敏感性,如下:
- +--------------+-----+-----+---------+----+-----------+------------+
- | 列 |Host |User |Password |Db |Table_name |Column_name |
- | 大小写敏感性 |No |Yes |Yes |Yes |Yes |No |
- +--------------+-----+-----+---------+----+-----------+------------+
2 授权表权限列,授权表还包含权限列,他们指出在范围列中指定的用户拥有何种权限.
- +------------+-----------------+----------------------+
- | 权限 | 列 | 作用域 |
- +------------+-----------------+----------------------+
- | select | Select_priv | 表 |
- | insert | Insert_priv | 表 |
- | update | Update_priv | 表 |
- | delete | Delete_priv | 表 |
- | index | Index_priv | 表 |
- | alter | Alter_priv | 表 |
- | create | Create_priv | 数据库、表或索引 |
- | drop | Drop_priv | 数据库或表 |
- | grant | Grant_priv | 数据库或表 |
- | references | References_priv | 数据库或表 |
- | reload | Reload_priv | 服务器管理 |
- | shutdown | Shutdown_priv | 服务器管理 |
- | process | Process_priv | 服务器管理 |
- | file | File_priv | 在服务器上的文件存取 |
- +------------+-----------------+----------------------+
3.数据库和表权限.
下列权限运用于数据库和表上的操作.
- ALTER
- //允许使用ALTER TABLE语句
- CREATE
- //允许创建数据库和表,但不允许创建索引。
- DELETE
- //允许从表中删除现有记录。
- DROP
- //允许删除(抛弃)数据库和表,但不允许删除索引。
- INDEX
- //允许创建并删除索引。
- REFERENCES
- //目前不用。
- SELECT
- //允许使用SELECT语句从表中检索数据。对不涉及表的SELECT语句就不必要,如SELECT NOW()或SELECT 4/2 //phpfensi.com
- UPDATE
- //允许修改表中的已有的记录。
管理权限:下列权限运用于控制服务器或用户授权能力的操作的管理性操作.
FILE:允许读写服务器主机上的文件,该权限不应该随便授予,它很危险,虽然已经授予读写权限,但所写的文件必须不是现存的文件,这防止你迫使服务器重写重要文件,如/etc/passwd或属于别人的数据库的数据目录.
如果授权FILE权限,确保UNIX不以root用户运行服务器,因为root可在文件系统的任何地方创建新文件,如果你以一个非特权用户运行服务器,服务器只能该给用户能访问的目录中创建文件.
GRANT:允许将自己的权限授予别人,包括GRANT.
PROCESS:允许通过使用SHOW PROCESS语句或mysqladmin process命令查看服务器内正在运行的线程(进程)的信息,这个权限也允许你用KILL语句或mysqladmin kill命令杀死线程,你同样可以看到或杀死你自己的线程,PROCESS权限赋予了你对任何线程做这些事情的权力.
RELOAD:允许执行大量的服务器管理操作,你可以发出FLUSH语句,你也能执行mysqladmin的reload、refresh、flush-hosts、flush-logs、flush-privileges和flush-tables等命令.
SHUTDOWN:允许用mysqladmin shutdown关闭服务器.
用户权限,实例例如:
指定用户访问,设置访问密码,指定访问主机.
① 设置访问单个数据库权限
01.mysql>grant all privileges on test.* to 'root'@'%';(说明:设置用户名为root,密码为空,可访问数据库test)
②设置访问全部数据库权限
01.mysql>grant all privileges on *.* to 'root'@'%';(说明:设置用户名为root,密码为空,可访问所有数据库*)
③设置指定用户名访问权限
01.mysql>grant all privileges on *.* to 'lanping'@'%';(说明:设置指定用户名为 lanping,密码为空,可访问所有数据库*)
④设置密码访问权限
01.mysql>grant all privileges on *.* to 'lanping'@'%' IDENTIFIED BY ' lanping';(说明:设置指定用户名为 lanping,密码为 lanping,可访问所有数据库*)
⑤设置指定可访问主机权限
01.mysql>grant all privileges on *.* to ' lanping '@'10.2.1.11';说明:设置指定用户名为 lanping ,可访问所有数据库*,只有127.0.0.1这台机器有权限访问
REVOKE
REVOKE和作用和GRANT相反,语法格式为:REVOKE privileges ON 数据库名[.表名] FROM user_name
例如:创建用户Bob,密码为“bob”,但不给他任何权限:
GRANT usage on * to Bob identified by ’bob’;
授予Bob在books数据库中的查询和插入权限:
GRANT select, insert on books.* to Bob;
取消Bob在books数据库中的所有权限:
REVOKE all on books.* from Bob;
注:需要指出的是,REVOKE all...仅仅是回收用户的权限,并不删除用户,在MySQL中,用户信息存放在mysql.User中,MySQL可以通过DROP USER来彻底删除一个用户,其用法为:
DROP USER user_name;
例如,要删除用户Bob,可以用:DROP USER Bob;
Tags: mysql权限 mysql参数
相关文章
- ·MySQL给用户加库操作权限sql语句(2014-09-28)
- ·MySQL查看用户权限的两种方法(2014-10-03)
- ·MySQL入门教程之用户管理(增加,删除,权限)(2014-10-03)
- ·MySQL给用户加库操作权限(2014-10-04)
- ·Mysql修改用户密码并设置用户权限(2014-10-08)
- ·MYSQL Grant,Revoke用户权限管理用法介绍(2014-10-09)
- ·MySQL数据库设置远程访问权限方法总结(2014-10-15)
- ·mysql参数thread_concurrency的设置问题(2014-09-23)
- ·MySQL中mysqldump参数使用说明(2014-09-28)
- ·mysql修改参数变量设置的一些方法总结(2014-10-02)
- ·MYSQL性能优化-安装时优化参数配置提高服务性能(2014-10-09)
- ·MySQL数据库性能进行优化三大绝招(2014-10-09)
- ·MySQL 数据库性能优化之缓存参数优化详解(2014-10-13)
- ·Mysql慢查询使用与参数详解(2015-04-17)
- ·MySQL慢查询日志开启分析详解介绍(2015-04-18)
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)