You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在AWS RDS MariaDB只读副本创建带指定权限的新用户?

在AWS RDS MariaDB只读副本上创建指定Schema只读权限用户的操作步骤

1. 连接到只读副本实例

使用MariaDB客户端(如mysql命令行工具、Navicat或MySQL Workbench),通过只读副本的端点、端口,搭配副本的管理员账号和你已设置的副本专属密码进行连接。示例命令:

mysql -h [只读副本端点] -P 3306 -u [副本管理员账号] -p

输入副本密码后即可进入数据库命令行。

2. 创建专属数据分析用户

根据安全需求创建用户,建议限制用户的连接IP(比如数据分析团队的办公网段),避免任意地址访问。如果允许所有地址连接可以用%,但不推荐。示例命令:

-- 限制特定IP段访问
CREATE USER 'data_analyst'@'192.168.1.0/24' IDENTIFIED BY '用户强密码';

-- 允许所有地址(仅测试或特殊场景使用)
CREATE USER 'data_analyst'@'%' IDENTIFIED BY '用户强密码';

3. 授予特定Schema的只读权限

针对目标Schema(比如名为business_data的数据库),授予用户仅读取的权限,确保用户只能访问指定Schema下的所有表,无修改权限:

GRANT SELECT ON business_data.* TO 'data_analyst'@'192.168.1.0/24';

如果需要多个Schema的权限,可以重复执行该命令,替换对应的Schema名称。

4. 刷新权限使设置生效

执行以下命令让权限配置立即生效:

FLUSH PRIVILEGES;

5. 验证权限有效性

用新创建的用户连接只读副本,尝试执行查询和修改操作,确认权限符合预期:

mysql -h [只读副本端点] -P 3306 -u data_analyst -p

登录后执行:

-- 查询指定Schema的表,应该正常返回结果
SELECT * FROM business_data.sales_records LIMIT 10;

-- 尝试修改数据,应该被拒绝(提示权限不足)
UPDATE business_data.sales_records SET amount = 100 WHERE id = 1;

注意事项

  • 只读副本上创建的用户和权限不会同步回主库,仅在当前副本生效,不会影响主库的权限体系。
  • 不要在主库创建该用户,因为主库用户会同步到副本,但副本与主库密码独立,可能导致同步过来的用户无法在副本登录。
  • 遵循最小权限原则,仅授予数据分析团队必需的Schema只读权限,避免过度授权。

内容的提问来源于stack exchange,提问作者Pankaj Jangid

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.14 04:45:56