MySQL建立用户名指定主机

流程表格

步骤 动作 代码
1 连接到MySQL服务器 mysql -u root -p
2 创建新的用户 CREATE USER 'username'@'hostname' IDENTIFIED BY 'password';
3 授权用户权限 GRANT privileges ON database.table TO 'username'@'hostname';
4 刷新权限 FLUSH PRIVILEGES;
5 退出MySQL服务器 exit

步骤解释

步骤1:连接到MySQL服务器

首先,我们需要连接到MySQL服务器。我们可以使用mysql -u root -p命令来连接到MySQL服务器。其中,-u参数表示用户名,root是MySQL的默认管理员用户名;-p参数表示需要输入密码。

步骤2:创建新的用户

创建新的用户使用CREATE USER语句。我们需要指定用户名、主机名和密码。代码如下:

CREATE USER 'username'@'hostname' IDENTIFIED BY 'password';
  • 'username':要创建的用户名。
  • 'hostname':要创建的用户所在的主机名。可以是具体的主机名或使用通配符(例如%,表示所有主机)。
  • 'password':用户的密码。

步骤3:授权用户权限

一旦我们创建了用户,我们可以使用GRANT语句来授予用户特定的权限。我们需要指定权限、数据库和表以及要授予的用户。代码如下:

GRANT privileges ON database.table TO 'username'@'hostname';
  • privileges:要授予的权限。可以是具体的权限(例如SELECT、INSERT、UPDATE等)或使用ALL表示所有权限。
  • database:要授权的数据库。
  • table:要授权的表。
  • 'username'@'hostname':要授权的用户名和主机名。

步骤4:刷新权限

在授予权限后,我们需要刷新MySQL的权限。这样MySQL才会重新加载权限表并使授权生效。我们可以使用FLUSH PRIVILEGES;命令来刷新权限。

步骤5:退出MySQL服务器

最后,我们可以使用exit命令退出MySQL服务器。

示例代码

下面是一个实际示例,假设我们要创建一个用户名为example,主机名为localhost,密码为password123的新用户,并授予该用户对数据库testdb中的表users的SELECT和INSERT权限。

-- 步骤1:连接到MySQL服务器
mysql -u root -p

-- 步骤2:创建新的用户
CREATE USER 'example'@'localhost' IDENTIFIED BY 'password123';

-- 步骤3:授权用户权限
GRANT SELECT, INSERT ON testdb.users TO 'example'@'localhost';

-- 步骤4:刷新权限
FLUSH PRIVILEGES;

-- 步骤5:退出MySQL服务器
exit

关系图

erDiagram
    USER ||--o USER_HOST : belongs_to
    USER_HOST {
        string hostname
    }
    USER {
        string username
        string password
    }
    USER }|--o DATABASE_USER : has
    DATABASE_USER {
        string privileges
    }
    DATABASE_USER }|--o DATABASE : has
    DATABASE {
        string name
    }
    DATABASE ||--o TABLE : includes
    TABLE {
        string name
    }

文章中的代码已经用markdown语法标识出来,供参考使用。请根据实际情况替换相应的参数值。希望这篇文章能帮助你理解如何在MySQL中建立用户名并指定主机。