mysql如何创建用户账户

创建MySQL用户需使用CREATE USER命令并指定用户名、主机和密码,如CREATE USER 'zhangsan'@'localhost' IDENTIFIED BY 'Passw0rd!123';随后通过GRANT命令授予权限,例如GRANT SELECT, INSERT ON testdb.* TO 'zhangsan'@'localhost';最后执行FLUSH PRIVILEGES刷新权限。可通过SELECT User, Host FROM mysql.user验证用户创建情况。注意MySQL 8.0+默认认证插件兼容性问题,建议按需授权避免使用ALL PRIVILEGES,远程访问时确保服务器配置和防火墙允许。

mysql如何创建用户账户

在 MySQL 中创建用户账户可以通过 SQL 语句完成,主要使用 CREATE USER 命令。创建后,还需要为用户分配相应的权限,否则用户无法操作数据库。

1. 使用 CREATE USER 创建用户

基本语法如下:

CREATE USER '用户名'@'主机' IDENTIFIED BY '密码';

说明:

  • 用户名:你希望创建的登录名。
  • 主机:指定该用户可以从哪个主机连接 MySQL。常见值有:
    • localhost:只能从本地登录。
    • %:允许从任意主机连接(远程访问)。
    • 具体IP:如 '192.168.1.100',限制从特定IP登录。
  • 密码:用户的登录密码,建议设置强密码。

示例:

CREATE USER 'zhangsan'@'localhost' IDENTIFIED BY 'Passw0rd!123';
CREATE USER 'lisi'@'%' IDENTIFIED BY 'MyP@ssw0rd';

2. 授予用户权限

创建用户后,需要使用 GRANT 命令赋予其操作权限,否则用户无法执行任何操作。

GRANT 权限 ON 数据库名.表名 TO '用户名'@'主机';

常用权限包括:

DESTOON B2B网站管理系统 DESTOON B2B网站管理系统

DESTOON B2B网站管理系统是一套完善的B2B(电子商务)行业门户解决方案。系统基于PHP+MySQL开发,采用B/S架构,模板与程序分离,源码开放。模型化的开发思路,可扩展或删除任何功能;创新的缓存技术与数据库设计,可负载千万级别数据容量及访问。

DESTOON B2B网站管理系统 0 查看详情 DESTOON B2B网站管理系统
  • SELECT:查询数据
  • INSERT:插入数据
  • UPDATE:修改数据
  • DELETE:删除数据
  • ALL PRIVILEGES:所有权限

示例:

-- 授予 zhangsan 在 testdb 库中所有表的读写权限
GRANT SELECT, INSERT, UPDATE, DELETE ON testdb.* TO 'zhangsan'@'localhost';

-- 授予 lisi 所有数据库的所有权限(谨慎使用)
GRANT ALL PRIVILEGES ON *.* TO 'lisi'@'%';

执行完授权后,记得刷新权限:

FLUSH PRIVILEGES;

3. 验证用户是否创建成功

可以通过以下命令查看已创建的用户:

SELECT User, Host FROM mysql.user;

这会列出当前 MySQL 中所有的用户及其允许的连接主机。

4. 注意事项

  • MySQL 8.0+ 默认使用 caching_sha2_password 插件验证,部分客户端可能不兼容。如有问题,可指定使用旧的验证方式:
CREATE USER 'user'@'host' IDENTIFIED WITH mysql_native_password BY 'password';
  • 生产环境中避免使用 ON *.* 赋予全部权限,应遵循最小权限原则。
  • 创建远程用户时(Host 为 '%'),确保 MySQL 服务器允许远程连接,并检查防火墙设置。

基本上就这些。创建用户、分配权限、刷新生效,三步搞定。注意安全配置即可。

以上就是mysql如何创建用户账户的详细内容,更多请关注其它相关文章!

本文转自网络,如有侵权请联系客服删除。