zoukankan      html  css  js  c++  java
  • MySQL修改用户(RENAME USER)/删除用户(DROP/DELETE USER)

    在 MySQL 中,我们可以使用 RENAME USER 语句修改一个或多个已经存在的用户账号。

    语法格式如下:

    RENAME USER <旧用户> TO <新用户>

    其中:

    • <旧用户>:系统中已经存在的 MySQL 用户账号。
    • <新用户>:新的 MySQL 用户账号。

    使用 RENAME USER 语句时应注意以下几点:

    • RENAME USER 语句用于对原有的 MySQL 用户进行重命名。
    • 若系统中旧账户不存在或者新账户已存在,该语句执行时会出现错误。
    • 使用 RENAME USER 语句,必须拥有 mysql 数据库的 UPDATE 权限或全局 CREATE USER 权限

    例 1

    使用 RENAME USER 语句将用户名 test1 修改为 testUser1,主机是 localhost。SQL 语句和执行过程如下。

    mysql> RENAME USER 'test1'@'localhost'
        -> TO 'testUser1'@'localhost';
    Query OK, 0 rows affected (0.03 sec)

    在 cmd 命令行工具中,使用 testUser1 用户登录数据库服务器,如下所示。

    C:UsersUSER>mysql -h localhost -u testUser1 -p
    Enter password: *****
    Welcome to the MySQL monitor.  Commands end with ; or g.
    Your MySQL connection id is 7
    Server version: 5.7.20-log MySQL Community Server (GPL)
    Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved.
    Oracle is a registered trademark of Oracle Corporation and/or its
    affiliates. Other names may be trademarks of their respective
    owners.
    Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.

    MySQL删除用户(DROP/DELETE USER)

    在 MySQL 数据库中,可以使用 DROP USER 语句删除用户,也可以直接在 mysql.user 表中删除用户以及相关权限。

    1. 使用 DROP USER 语句删除普通用户

    使用 DROP USER 语句删除用户的语法格式如下:

    DROP USER <用户1> [ , <用户2> ]…

    其中,用户用来指定需要删除的用户账号。

    使用 DROP USER 语句应注意以下几点:

    (1)DROP USER 语句可用于删除一个或多个用户,并撤销其权限。

    (2)使用 DROP USER 语句必须拥有 mysql 数据库的 DELETE 权限或全局 CREATE USER 权限。

    (3)在 DROP USER 语句的使用中,若没有明确地给出账户的主机名,则该主机名默认为“%”

    注意:用户的删除不会影响他们之前所创建的表、索引或其他数据库对象,因为 MySQL 并不会记录是谁创建了这些对象。

    例 1

    下面使用 DROP USER 语句删除用户'test1@'localhost'。SQL 语句和执行过程如下。

    mysql> DROP USER 'test1'@'localhost';
    Query OK, 0 rows affected (0.00 sec)

    在 cmd 命令行工具中,使用 test1 用户登录数据库服务器,发现登录失败,说明用户已经删除,如下所示。

    C:UsersUSER>mysql -h localhost -u test1 -p
    Enter password: ****
    ERROR 1045 (28000): Access denied for user 'test'@'localhost' (using  password: YES)

    2. 使用DELETE语句删除普通用户

    可以使用 DELETE 语句直接删除 mysql.user 表中相应的用户信息,但必须拥有 mysql.user 表的 DELETE 权限。其基本语法格式如下:

    DELETE FROM mysql.user WHERE Host='hostname' AND User='username';

    Host 和 User 这两个字段都是 mysql.user 表的主键。因此,需要两个字段的值才能确定一条记录。

    例 2

    下面使用 DELETE 语句删除用户'test2'@'localhost'。SQL 语句和执行过程如下所示。

    DELETE FROM mysql.user WHERE Host='localhost'AND User='test2';
    Query OK, 1 rows affected (0.00 sec)

    结果显示删除成功。可以使用 SELETE 语句查询 mysql.user 表,以确定该用户是否已经成功删除。

  • 相关阅读:
    设计模式课程 设计模式精讲 11-2 装饰者模式coding
    设计模式课程 设计模式精讲 10-3 外观模式源码解析
    设计模式课程 设计模式精讲 11-1 装饰者模式讲解
    设计模式课程 设计模式精讲 10-2 外观模式coding
    设计模式课程 设计模式精讲 10-1 外观模式讲解
    设计模式课程 设计模式精讲 重点
    设计模式课程 设计模式精讲 9-4 原型模式源码解析
    设计模式课程 设计模式精讲 9-3 原型模式-克隆破坏单例
    iframe平铺到浏览器
    密码输入框
  • 原文地址:https://www.cnblogs.com/cy0628/p/15026930.html
Copyright © 2011-2022 走看看