MySQL - 创建用户

MySQL - 创建用户 首页 / MySQL入门教程 / MySQL - 创建用户

MySQL用户是MySQL服务器 USER 表中的一条记录,其中包含登录信息,帐户特权和MySQL帐户的主机信息。在MySQL中创建用于访问和管理数据库的用户至关重要。

MySQL Create User语句允许无涯教程在数据库服务器中创建一个新的用户帐户。它为新帐户提供身份验证,SSL/TLS,资源限制,角色和密码管理属性。它还使能够控制最初应锁定或解锁的帐户。

如果要使用"CREATE USER",则必须具有"CREATE USER"语句的 global 特权或MySQL系统模式的 INSERT 特权。当您创建一个已经存在的用户时,会出现错误。但是,如果使用 IF NOT EXISTS 子句,则该语句会为每个已存在的命名用户提供警告,而不是错误消息。

为什么需要创建新用户

MySQL服务器安装完成后,它只有一个 ROOT 用户帐户才能访问和管理数据库。但是,有时候,您希望授予数据库访问权给其他人,而不授予他们完全控制权。在这种情况下,您将创建一个非root用户并授予他们特定的访问和修改数据库的特权。

以下语法用于在数据库服务器中创建用户。

CREATE USER [IF NOT EXISTS] account_name IDENTIFIED BY 'password';

在以上语法中,帐户名(account_name)分为两部分,一个是用户名(username),另一个是主机名(hostname),由 @分隔符号。在这里,用户名是用户的名称,主机名是用户可以从中连接数据库服务器的主机的名称。

username@hostname

主机名是可选的。如果未提供主机名,则用户可以从服务器上的任何主机进行连接。不带主机名的用户帐户名可以写为:

username@%

创建用户示例

以下是在MySQL服务器数据库中创建新用户所需的步骤。

步骤1:使用 mysql客户端工具打开MySQL服务器。

步骤2:输入帐户密码,然后按Enter。

Enter Password: ********

步骤3:执行以下命令以显示当前MySQL服务器中的所有用户。

mysql> select user from mysql.user;

无涯教程将得到如下输出:

 MySQL创建用户

步骤4:使用以下命令创建新用户。

mysql> create user peter@localhost identified by 'jtp12345';

现在,运行命令以再次显示所有用户。

 MySQL创建用户

在上面的输出中,无涯教程可以看到用户 peter 已成功创建。

步骤5:现在,将IF NOT EXISTS子句与CREATE USER语句一起使用。

mysql> CREATE USER IF NOT EXISTS adam@localhost IDENTIFIED BY 'jtp123456';

向用户授予权限

MySQL服务器为新用户帐户提供多种类型的特权。下面列出了一些最常用的特权:

  1. ALL PRIVILEGES   - 它授予新用户帐户所有特权。
  2. CREATE                      -  它使用户帐户可以创建数据库和表。
  3. DROP                           -   它使用户帐户能够删除数据库和表。
  4. DELETE                      -  它使用户帐户可以删除特定表中的行。
  5. INSERT                       -  它使用户帐户可以将行插入到特定表中。
  6. SELECT                       -  它使用户帐户能够读取数据库。
  7. UPDATE                     -  它使用户帐户能够更新表行。

如果要将所有特权授予新创建的用户,请执行以下命令。

mysql> GRANT ALL PRIVILEGES ON * . * TO peter@localhost;

如果要给新创建的用户特定的特权,请执行以下命令。

mysql> GRANT CREATE, SELECT, INSERT ON * . * TO peter@localhost;

有时,您想FLUSH用户帐户的所有特权以立即进行更改,请键入以下命令。

FLUSH PRIVILEGES;

如果要查看用户的现有特权,请执行以下命令。

mysql> SHOW GRANTS for username;

祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)

技术教程推荐

Vue开发实战 -〔唐金州〕

SQL必知必会 -〔陈旸〕

Spring Boot与Kubernetes云原生微服务实践 -〔杨波〕

etcd实战课 -〔唐聪〕

Python自动化办公实战课 -〔尹会生〕

流程型组织15讲 -〔蒋伟良〕

说透芯片 -〔邵巍〕

零基础学Python(2023版) -〔尹会生〕

结构写作力 -〔李忠秋〕

好记忆不如烂笔头。留下您的足迹吧 :)