MySQL/Amazon RDS 错误 : "you do not have SUPER privileges..."

标签 mysql amazon-ec2 amazon-web-services amazon-rds sql-grant

我正在尝试将我的 mysql 数据库从 Amazon EC2 复制到 RDS:

我成功地将我的数据库的 mysqldump 放到我的根文件夹中:

root@ip-xx-xx-xx-xx:~# mysqldump my_database -u my_username -p > my_database.sql

然后我尝试将此 .sql 文件传输到我的新 RDS 数据库:

root@ip-xx-xx-xx-xx:~# mysql my_database -u my_username -p -h  
my_new_database.xxxxxxxxx.us-east-1.rds.amazonaws.com < my_database.sql

很遗憾,我收到以下错误消息:

You do not have the SUPER privilege and binary logging is enabled 
(you *might* want to use  the less safe log_bin_trust_function_creators variable)

我尝试以多种方式GRANT SUPER..,但是当我尝试这样做时也遇到了错误。键入 mysql > FLUSHprivilege; 也不起作用。

我是一个 mysql 初学者,很抱歉这么简单的问题。想法?

最佳答案

  1. 打开 RDS Web 控制台。
  2. 打开“参数组”选项卡。
  3. 创建一个新的参数组。在对话框中,选择与您的 MySQL 数据库版本兼容的 MySQL 系列,为其命名并确认。 选择刚刚创建的参数组并发出“编辑参数”。
  4. 查找参数 log_bin_trust_function_creators 并将其值设置为 1
  5. 保存更改。
  6. 打开“实例”标签。展开您的 MySQL 实例并发出名为“Modify”的“Instance Action”。
  7. 选择刚刚创建的参数组并启用“立即应用”。
  8. 点击“继续”并确认更改。
  9. 等待“修改”操作完成。
  10. 再次打开“实例”标签。展开您的 MySQL 实例并展开“Instance Action”选项卡并选择“Reboot”。

不需要重新启动,因为 log_bin_trust_function_creators 具有 apply type = dynamic。如果您的 RDS 已经有一个附加的参数组并且您对其进行编辑,而不是创建一个新的参数组,那么至少这是正确的。只需保存参数编辑即可。

关于MySQL/Amazon RDS 错误 : "you do not have SUPER privileges...",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11601692/

相关文章:

php - 使用 Php 和 Mysql 插入数据时出错

javascript - 我怎样才能在这个购物车php中插入数量

amazon-web-services - 在我的网站中从 s3 存储桶流式传输视频需要付费吗?

amazon-web-services - AWS Amazon - 登录循环卡住

amazon-web-services - 按用户属性限制 IoT 主题

php - 仅显示包含项目列表中的图像的数据

php - 在一个查询 API 和 PHP 中插入或更新

ssl - 在AWS Windows实例中获取SSL的CSR文件

amazon-web-services - AWS Cloudformation 使用内部 IP 地址进行通信

python - 在 ec2 上安装我的 Django 应用程序