zoukankan      html  css  js  c++  java
  • mysql用户账号、权限、密码管理

    一:用户账号管理

    查看当前可登录数据库的用户

    mysql>SELECT host,user FROM mysql.user;

     创建新用户

    mysql>CREATE USER username@host IDENTIFIED BY '密码';

     注意:username是用户名,host用于指定登录的主机,如果是本地用户用localhost,如果需要远程连接可以指定ip,或者使用“%”可以从任意主机登录。

    删除用户

    mysql>DROP USER pangpang@localhost ;

     修改用户名

    是对库名为mysql的数据库中的user表进行更新,这里别搞混了,不是ORACLE、SQLserver的那个mysql,以下默认皆是。

    mysql>USE mysql;
    mysql>UPDATE user SET USER="新用户名" WHERE USER ="旧用户名";

    或者直接指定哪个数据库和表名

     禁用账号

    mysql>ALTER USER pangpang@localhost ACCOUNT LOCK;

    启用账号

    mysql>ALTER USER pangpang@localhost ACCOUNT UNLOCK;

     二:用户密码管理

    修改用户密码

    mysql> ALTER USER pangpang@localhost IDENTIFIED BY "2wsx@WSX";

     设置密码有效期

    expire是失效、终止的意思

    mysql> ALTER USER pangpang@localhost PASSWORD EXPIRE INTERVAL 100 DAY;

     禁用密码过期功能

    mysql> ALTER USER pangpang@localhost PASSWORD EXPIRE NEVER;

    恢复默认用户密码策略

    mysql> ALTER USER pangpang@localhost PASSWORD EXPIRE DEFAULT;

    三:用户权限管理

    Mysql 通过GRANT命令进行赋权操作

    常用权限参考

    usage 无权限
    
    SELECT 查询表记录
    
    INSERT 插入表记录
    
    UPDATE 更新表记录
    
    DELETE 删除表记录
    
    CREATE 创建库、表
    
    DROP 删除库、表
    
    RELOAD 有重新载入授权 必须拥有reload权限,才可以执行flush [tables | logs | privileges]
    
    SHUTDOWN 允许关闭mysql服务 使用mysqladmin shutdown 来关闭mysql
    
    PROCESS 允许查看用户登录数据库服务器的进程 ( show processlist; )
    
    FILE 导入、导出数据
    
    REFERENCES 创建外键
    
    INDEX 创建索引
    
    ALTER 修改表结构
    
    SHOW DATABASES 查看库
    
    SUPER 关闭属于任何用户的线程
    
    CREATE TEMPORARY TABLES 允许在create table 语句中使用 TEMPORARY关键字
    
    LOCK TABLES 允许使用 LOCK TABLES 语句
    
    EXECUTE 执行存在的Functions,Procedures
    
    REPLICATION SLAVE 从主服务器读取二进制日志
    
    REPLICATION CLIENT 允许在主/从数据库服务器上使用 show status命令
    
    CREATE VIEW 创建视图
    
    SHOW VIEW 查看视图
    
    CREATE ROUTINE 创建存储过程
    
    ALTER ROUTINE 修改存储过程
    
    CREATE USER 创建用户
    
    EVENT 有操作事件的权限
    
    TRIGGER, 有操作触发器的权限
    
    CREATE TABLESPACE 有创建表空间的权限

    GRANT命令的常见格式

    命令解析

    作用

    GRANT 权限 ON 数据库.表单名称 TO 账户名@主机名

    对某个特定数据库中的特定表单赋权

    GRANT 权限 ON 数据库.* TO 账户名@主机名

    对某特定数据库中的所有表单赋权

    GRANT 权限 ON *.* TO 账户名@主机名

    对所有数据库及其所有表单赋权

    GRANT 权限1,权限2 ON 数据库.* TO 账户名@主机名

    对某数据库的所有表单赋多个权

    GRANT ALL PRIVILEGES ON *.* TO 账户名@主机名

    对全部数据及表单赋予所有权限(慎用)

    查看当前用户的权限

    mysql> SHOW GRANTS;

     查看特定用户的权限

    mysql> SHOW GRANTS FOR pangpang@localhost;

     给用户添加某权限

    mysql>GRANT UPDATE ON *.* TO pangpang@localhost;

     赋予多项权限用逗号隔开

    mysql>  GRANT DELETE,CREATE ON *.* TO pangpang@localhost;

     删除用户某项权限

    mysql> REVOKE DELETE ON *.* FROM pangpang@localhost;

     同时删除所有权限

    mysql> REVOKE ALL ON *.* FROM pangpang@localhost;
  • 相关阅读:
    特性和属性
    装箱和拆箱的问题(NET1.1+)
    poj 1013 Counterfeit Dollar(模拟)
    poj 3686 The Windy's( KM算法 )
    二分匹配(匈牙利算法)
    poj 3273 Monthly Expense(二分)
    poj 2115 C Looooops(扩展欧几里德)
    poj 2400 Supervisor, Supervisee
    poj 2195 Going Home (KM算法)
    poj 2513 Colored Sticks(trie树 + 并查集 + 欧拉图)
  • 原文地址:https://www.cnblogs.com/maohai-kdg/p/11810844.html
Copyright © 2011-2022 走看看