加入收藏 | 设为首页 | 会员中心 | 我要投稿 云计算网_泰州站长网 (http://www.0523zz.com/)- 视觉智能、AI应用、CDN、行业物联网、智能数字人!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

mysql中权限参数详解

发布时间:2022-06-20 14:24:54 所属栏目:MySql教程 来源:互联网
导读:权限是mysql中一个非常重要的功能,我们针对不用的用户会设置不同的权限,这样可以保证mysql数据库安全的运行,下面我来分享一些mysql权限参考介绍. 1 授权表范围列的大小写敏感性,如下: +--------------+-----+-----+---------+----+-----------+------------+
  权限是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     | 数据库、表或索引     |
  
  下列权限运用于数据库和表上的操作.
 
  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可在文件系统的任何地方创建新文件,如果你以一个非特权用户运行服务器,服务器只能该给用户能访问的目录中创建文件.
  
  ① 设置访问单个数据库权限
 
  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在books数据库中的所有权限:
 
  REVOKE all on books.* from Bob;
 
  注:需要指出的是,REVOKE all...仅仅是回收用户的权限,并不删除用户,在MySQL中,用户信息存放在mysql.User中,MySQL可以通过DROP USER来彻底删除一个用户,其用法为:
 
  DROP USER user_name;
 
  例如,要删除用户Bob,可以用:DROP USER Bob;

(编辑:云计算网_泰州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读