mysql如何创建用户_mysql新用户创建方法

1次阅读

mysql创建用户推荐使用CREATE USER语句,再用GRANT授权;语法为CREATE USER ‘user’@’host’ IDENTIFIED BY ‘pwd’,授权用GRANT PRIV ON db.tbl TO ‘user’@’host’,最后FLUSH PRIVILEGES生效。

mysql如何创建用户_mysql新用户创建方法

MySQL 创建用户主要通过 CREATE USER 语句完成,配合 GRANT 授予对应权限。从 MySQL 5.7 开始推荐使用该方式,安全且语义清晰。

使用 CREATE USER 创建新用户

基本语法如下(以用户名 app_user、密码 secure123、仅允许本地登录为例):

CREATE USER 'app_user'@'localhost' IDENTIFIED BY 'secure123';

  • 'app_user'@'localhost' 表示用户只能从本机连接;若需远程访问,把 localhost 换成 '%'(任意主机)或具体 IP,如 '192.168.1.100'
  • 密码必须用单引号包裹,且建议使用强密码
  • 执行后用户仅存在,但无任何数据库操作权限

用 GRANT 授权给新用户

创建用户后需显式授权,例如赋予对数据库 myapp_db 的全部权限:

GRANT ALL PRIVILEGES ON myapp_db.* TO 'app_user'@'localhost';

mysql如何创建用户_mysql新用户创建方法

DESTOON B2B网站管理系统

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

mysql如何创建用户_mysql新用户创建方法 0

查看详情 mysql如何创建用户_mysql新用户创建方法

  • ALL PRIVILEGES 可替换为更具体的权限,如 select, INSERT, UPDATE
  • myapp_db.* 表示该库下所有表;也可指定表,如 myapp_db.users
  • 授权后必须执行 FLUSH PRIVILEGES; 刷新权限表(部分高版本 MySQL 在 GRANT 后自动刷新,但显式执行更稳妥)

一步创建并授权(兼容旧习惯)

MySQL 5.7 之前常用 GRANT 直接创建用户,现在仍支持:

GRANT SELECT, INSERT ON myapp_db.orders TO 'report_user'@'%' IDENTIFIED BY 'readonly2024';

  • 该语句会自动创建用户(如果不存在),并直接授权
  • 注意:这种方式在严格 SQL 模式或某些部署策略中可能被禁用,建议优先用 CREATE USER + GRANT 分步操作
  • 同样需要 FLUSH PRIVILEGES; 确保生效

验证与后续管理

创建完成后可登录验证:

mysql -u app_user -p -h 127.0.0.1

  • 查看用户列表:SELECT User, Host FROM mysql.user;
  • 查看某用户权限:SHOW GRANTS for 'app_user'@'localhost';
  • 修改密码:ALTER USER 'app_user'@'localhost' IDENTIFIED BY 'newpass123';
  • 删除用户:DROP USER 'app_user'@'localhost';

text=ZqhQzanResources