- 文档首页
云数据库 MySQL 版
用户指南
账号与访问授权
创建账号
创建账号
本文介绍如何为 MySQL 实例的数据库创建账号。
前提条件
- 已创建实例且实例状态处于运行中。具体操作,请参见创建实例。
- 如您需要为账号按照主机 IP 授权,需提前为实例开启数据库代理服务。关于开启数据库代理的详细信息,请参见开启数据库代理。
注意事项
- 新建账号、修改账号、权限授予和回收可以通过控制台、账号管理 API 接口或 SQL 命令(CREATE USER、ALTER USER、GRANT和REVOKE)完成。
- 不同版本的实例支持的密码认证插件不同,具体区别如下:
- MySQL 5.7 的实例仅支持 mysql_native_password 密码认证插件。
- MySQL 8.0 和 MySQL 8.4 的实例支持 mysql_native_password 和 caching_sha2_password 两种密码认证插件。其中 MySQL 8.0 默认使用 mysql_native_password;MySQL 8.4 默认使用 caching_sha2_password。
- 请勿直接通过 UPDATE mysql.user 修改 plugin、authentication_string 等认证字段。此类操作会绕过 MySQL 账号管理语句对认证插件和认证数据的一致性处理,并且不会立即刷新内存中的授权信息。如果认证插件与认证数据不匹配,账号记录在授权表下次重新加载时(例如执行 FLUSH PRIVILEGES、实例重启或版本升级伴随重启后)可能被判定为无效并被忽略,进而导致账号无法登录或相关账号管理操作失败。更多信息,请参见 MySQL 官方文档。
- 如果需要在创建新账号时指定使用的密码认证插件或修改已有账号使用的密码认证插件,请使用 CREATE USER 和 ALTER USER 命令。示例如下:
CREATE USER 'app_user'@'%' IDENTIFIED WITH mysql_native_password BY 'psssword1';
ALTER USER 'app_user'@'%' IDENTIFIED WITH caching_sha2_password BY 'password2';
常见问题
高权限账号和普通账号有什么区别?
- 普通账号:需要手动给普通账号授予特定数据库权限。
高权限账号能否修改指定权限?
高权限账号只能重置为初始状态,无法修改为指定的权限。
数据库是否可以绑定多个账号?
可以。
为什么账号的状态显示“不可用”?
原因分析:如果在创建数据库账号后,通过命令行删除了该账号,那么在控制台的账号列表中,该账号的状态会显示为不可用。
解决办法:在控制台为账号重置密码,即可恢复账号为可用状态。关于重置密码的详细信息,请参见重置账号密码。建议在控制台进行账号管理相关操作,以避免账号不可用的情况。 相关 API
最近更新时间:2026.09.17 15:13:26