zoukankan      html  css  js  c++  java
  • MySQL用户权限

    -- 【两粒芝麻】建立用户 授权 取消授权 生效
    GRANT USAGE ON test.* TO 'llzm'@'%' IDENTIFIED BY  '123' ;
    GRANT select,insert on test.* to 'llzm'@'%';
    revoke select,insert on test.* from 'llzm'@'%';
    FLUSH PRIVILEGES;
    ====================================================================
    查看MySQL用户权限:

    show grants for 你的用户

    比如:
    show grants for root@'localhost';

    Grant 用法

    GRANT USAGE ON *.* TO 'discuz'@'localhost' IDENTIFIED BY PASSWORD '*C242DDD213BE9C6F8DA28D49245BF69FC79A86EB';
    GRANT ALL PRIVILEGES ON `discuz`.* TO 'discuz'@'localhost';

    我先按我的理解解释一下上面两句的意思
    建立一个只可以在本地登陆的 不能操作的用用户名 discuz 密码为 ***** 已经加密了的
    然后第二句的意思是 ,给这个discuz用户操作discuz数据库的所有权限

    使用GRANT

    GRANT命令用来建立新用户,指定用户口令并增加用户权限。其格式如下:

    mysql> GRANT <privileges> ON <what>
    -> TO <user> [IDENTIFIED BY "<password>"]
    -> [WITH GRANT OPTION];


    正如你看到的,在这个命令中有许多待填的内容。让我们逐一地对它们进行介绍,并最终给出一些例子以让你对它们的协同工作有一个了解。

    <privileges>是一个用逗号分隔的你想要赋予的MySQL用户权限的列表。你可以指定的权限可以分为三种类型:

    数据库/数据表/数据列权限: Alter: 修改已存在的数据表(例如增加/删除列)和索引。
    Create: 建立新的数据库或数据表。
    Delete: 删除表的记录。
    Drop: 删除数据表或数据库。
    INDEX: 建立或删除索引。
    Insert: 增加表的记录。
    Select: 显示/搜索表的记录。
    Update: 修改表中已存在的记录。

    全局管理MySQL用户权限:

    file: 在MySQL服务器上读写文件。
    PROCESS: 显示或杀死属于其它用户的服务线程。
    RELOAD: 重载访问控制表,刷新日志等。
    SHUTDOWN: 关闭MySQL服务。

    特别的权限:

    ALL: 允许做任何事(和root一样)。
    USAGE: 只允许登录--其它什么也不允许做。


    ========对于ROOT用户的密码操作(更改用户密码)========
    刚刚安装完的MySQL,MySQL权限管理上只一有个root用户,密码为空,而且只能在本机登录!

    为root加上密码xxx123:
    ./bin/mysqladmin -u root password xxx123
    或写成
    ./bin/mysqladmin -uroot password xxx123

    加下密码之后,在本进行进入mysql:
    ./bin/mysql -uroot -p

    更改root的密码由xxx123改为yy1234:
    ./bin/mysqladmin -uroot -pxxx123 password yy1234

    =======grant 权限 on 数据库对象 to 用户==========
    MySQL 赋予用户权限命令的简单格式可概括为:
    grant 权限 on 数据库对象 to 用户
    grant 权限 on 数据库对象 to 用户 identified by "密码"

    ========用户及权限管理:最常用操作实例========
    (用户名:dba1,密码:dbapasswd,登录IP:192.168.0.10)

    //开放管理MySQL中所有数据库的权限
    grant all on *.* to dba1@'192.168.0.10'identified by "dbapasswd";

    //开放管理MySQL中具体数据库(testdb)的权限
    grant all privileges on testdb to dba1@'192.168.0.10'identified by "dbapasswd";

    grant all on testdb to dba1@'192.168.0.10'identified by "dbapasswd";

    //开放管理MySQL中具体数据库的表(testdb.table1)的权限
    grant all on testdb.teable1 to dba1@'192.168.0.10'identified by "dbapasswd";

    //开放管理MySQL中具体数据库的表(testdb.table1)的部分列的权限
    grant select(id, se, rank) on testdb.table1 to ba1@'192.168.0.10'identified by "dbapasswd";

    //开放管理操作指令
    grant select, insert, update, delete on testdb.* to dba1@'192.168.0.10'identified by "dbapasswd";

    //回收权限
    revoke all on *.* from dba1@localhost;

    //查看 MySQL 用户权限
    show grants;
    show grants for dba1@localhost;
    *************************************************************
    其它参考地址:mysql 添加用户访问权限 http://blog.chinaunix.net/uid-73604-id-3045977.html
    http://blog.csdn.net/e_zhiwen/article/details/5060878

  • 相关阅读:
    深入理解计算机系统 第六章 存储器层次结构 第二遍
    深入理解计算机系统 第六章 存储器层次结构
    深入理解计算机系统 第八章 异常控制流 Part2 第二遍
    深入理解计算机系统 第八章 异常控制流 part2
    深入理解计算机系统 第八章 异常控制流 Part1 第二遍
    深入理解计算机系统 第八章 异常控制流 part1
    深入理解计算机系统 第三章 程序的机器级表示 Part2 第二遍
    深入理解计算机系统 第三章 程序的机器级表示 part2
    深入理解计算机系统 第三章 程序的机器级表示 Part1 第二遍
    深入理解计算机系统 第三章 程序的机器级表示 part1
  • 原文地址:https://www.cnblogs.com/zhima/p/7474845.html
Copyright © 2011-2022 走看看