zoukankan      html  css  js  c++  java
  • mysql grant ,User,revoke

    mysql的权限一直都都是很关心的重点,我知道的也只是很少的一部分,对于每个数据库我习惯创建一个一个用户,该用户只对自己从属的数据库产生进行操作,在一部分的程度上可以保护自己的数据库,

    比如我有一个数据库叫做dream,

    create user dream@localhost  indentified by 'dream';//创建用户

    revoke all on *.* from dream@localhost;//删除权限

    flush privileges;//刷新日志:应用在没有登录数据库的时候方法如下-----,如果登入了数据库,直接写就可以了

    ----------------------------------------------------------************************************----------------------------------------------------
    shell> mysqladmin [options] command [command-options] [command [command-options]] ...

    mysqladmin支持下面的命令:

    ·         create db_name

    创建一个名为db_name的新数据库。

    ·         debug

    告诉服务器向错误日志写入调试信息。

    ·         drop db_name

    删除名为db_nam的数据库和所有表。

    ·         extended-status

    显示服务器状态变量及其值。

    ·         flush-hosts

    刷新主机缓存中的所有信息。

    ·         flush-logs

    刷新所有日志。

    ·         flush-privileges

    重载授权表(类似reload)。

    ·         flush-status

    清除状态变量。

    ·         flush-tables

    刷新所有表。

    ·         flush-threads

    刷新线程缓存。

    ·         kill id,id,...

    杀掉服务器线程。

    ·         old-password new-password

     -----------------------------------------------------------************************************------------------------------------------------------------------

    grant select,index,select,insert,drop,alter,update on dream.* to dream@localhost  identified by 'dream';//赋予权限

    对于GRANT和REVOKE语句,priv_type可以被指定为以下任何一种:

    权限

    意义

    ALL [PRIVILEGES]

    设置除GRANT OPTION之外的所有简单权限

    ALTER

    允许使用ALTER TABLE

    ALTER ROUTINE

    更改或取消已存储的子程序

    CREATE

    允许使用CREATE TABLE

    CREATE ROUTINE

    创建已存储的子程序

    CREATE TEMPORARY TABLES

    允许使用CREATE TEMPORARY TABLE

    CREATE USER

    允许使用CREATE USER, DROP USER, RENAME USER和REVOKE ALL PRIVILEGES。

    CREATE VIEW

    允许使用CREATE VIEW

    DELETE

    允许使用DELETE

    DROP

    允许使用DROP TABLE

    EXECUTE

    允许用户运行已存储的子程序

    FILE

    允许使用SELECT...INTO OUTFILE和LOAD DATA INFILE

    INDEX

    允许使用CREATE INDEX和DROP INDEX

    INSERT

    允许使用INSERT

    LOCK TABLES

    允许对您拥有SELECT权限的表使用LOCK TABLES

    PROCESS

    允许使用SHOW FULL PROCESSLIST

    REFERENCES

    未被实施

    RELOAD

    允许使用FLUSH

    REPLICATION CLIENT

    允许用户询问从属服务器或主服务器的地址

    REPLICATION SLAVE

    用于复制型从属服务器(从主服务器中读取二进制日志事件)

    SELECT

    允许使用SELECT

    SHOW DATABASES

    SHOW DATABASES显示所有数据库

    SHOW VIEW

    允许使用SHOW CREATE VIEW

    SHUTDOWN

    允许使用mysqladmin shutdown

    SUPER

    允许使用CHANGE MASTER, KILL, PURGE MASTER LOGS和SET GLOBAL语句,mysqladmin debug命令;允许您连接(一次),即使已达到max_connections。

    UPDATE

    允许使用UPDATE

    USAGE

    “无权限”的同义词

    GRANT OPTION

    drop user dream@localhost//删除用户

    revoke select on dream.* from dream@localhost//剥夺权限

    我们有的时候会写revoke .. on *.*,但是我最近发现,这条语句不起作用,只有剥夺用户指定数据库的权限,才会起作用

  • 相关阅读:
    题解 LNOI2014 LCA
    题解 P3413 【SAC#1
    题解 P3372 【【模板】线段树 1】(珂朵莉树解法)
    题解 P2610 【[ZJOI2012]旅游】
    题解 CF911D 【Inversion Counting】
    题解 CF1037D 【Valid BFS?】
    bootstrap常用部件下载
    sql获取上月同期
    VSS配置
    SQL中的union,except,intersect用法
  • 原文地址:https://www.cnblogs.com/testlife007/p/4624518.html
Copyright © 2011-2022 走看看