暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

MySQL 创建用户 | Mysql Create User

跟谁学编程 2021-10-16
1157
MySQL 用户是MySQL 服务器 USER 表中的一条记录,其中包含MySQL 帐户的登录信息、帐户权限和主机信息。在 MySQL 中创建一个用户来访问和管理数据库是必不可少的。
MySQL Create User 语句允许我们在数据库服务器中创建一个新的用户帐户。它为新帐户提供身份验证、SSL/TLS、资源限制、角色和密码管理属性。它还使我们能够控制应该锁定或解锁的帐户。
如果要使用Create User,则需要具有创建用户语句的全局权限。当您创建一个已经存在的用户时会出错。如果您使用IF NOT EXISTS子句,则该语句则不会因为账户存在而报错。

为什么需要在 MySQL 中创建用户?

当 MySQL 服务器安装完成后,它只有一个ROOT用户帐户来访问和管理数据库。但是,有时,您希望将数据库访问权限授予其他人,而不授予他们完全控制权。在这种情况下,您将创建一个非 root 用户并授予他们访问和修改数据库的特定权限。
以下语法用于在数据库服务器中创建用户:
CREATE USER  [IF  NOT  EXISTS] account_name IDENTIFIED  BY ‘password’ ;    
在上面的语法中,account_name有两部分,一部分是username,另一部分是hostname,由@符号分隔。这里,username 是用户名,hostname 是用户可以连接数据库服务器的主机名。
username@hostname
主机名是可选的。如果您没有提供主机名,则用户可以从服务器上的任何主机进行连接。没有主机名的用户帐户名可以写成:
username@%
注意:创建一个具有完全访问权限的新用户,需要使用 GRANT 语句给用户授权。

MySQL 创建用户示例

以下是在 MySQL 服务器数据库中创建新用户所需的步骤。
第一步:使用mysql客户端工具打开MySQL服务器。
第二步:输入帐户的密码,然后按 Enter。
第三步:执行以下命令,显示当前MySQL服务器中的所有用户。
mysql> select user from mysql.user;
第四步:使用以下命令创建一个新用户。
mysql> create user runoon@localhost identified by 'runoon12345';
第五步:在 CREATE USER 语句中使用 IF NOT EXISTS 子句。
mysql> CREATE USER IF NOT EXISTS run@localhost IDENTIFIED BY 'run123456';

为 MySQL 新用户授予权限

MySQL 服务器为新用户帐户提供多种类型的权限。下面给出了一些最常用的权限:
  1. ALL PRIVILEGES:新帐户拥有所有特权。
  2. CREATE:帐户能够创建数据库和表。
  3. DROP:帐户能够删除数据库和表。
  4. DELETE:帐户能够从特定表中删除行。
  5. INSERT:帐户能够将行插入到特定表中。
  6. SELECT:帐户能够读取数据库。
  7. UPDATE:帐户能够更新表行。
如果要将所有权限授予新创建的用户,请执行以下命令。
mysql> GRANT ALL PRIVILEGES ON *.* TO runoon@localhost;
如果要为新创建的用户授予特定权限,请执行以下命令。
mysql> GRANT CREATE, SELECT, INSERT ON *.* TO runoon@localhost;
如果您希望帐户的所有权限以立即发生更改,请执行以下命令:
FLUSH PRIVILEGES;
如果要查看用户的现有权限,请执行以下命令:
SHOW GRANTS for username;

长按二维码关注公众号,查阅更多教程


文章转载自跟谁学编程,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论