如何使我的本地mysql设置与Amazon RDS匹配?

时间:2016-04-01 18:48:15

标签: mysql amazon-web-services amazon-rds

我有一个设置,我使用本地mysql实例在本地开发,然后将我的代码推送到使用RDS MySQL实例的AWS。

我想让我的本地数据库尽可能地匹配RDS设置。我遇到了配置问题,其中一个明显的问题在本地开发中没有出现,但我的测试在RDS上失败了。例如,最近的一个问题是表的RDS默认字符集是latin1,而brew安装的mysql的默认设置是UTF-8。

我可以解决这些问题,但是进行批量设置非常有用,可以配置我的本地MySQL以尽可能地匹配RDS。

这可行吗?

3 个答案:

答案 0 :(得分:2)

只需进入您在RDS中使用的参数组,并将所有这些设置复制到本地MySQL服务器。

答案 1 :(得分:0)

这是一个简短的powershell命令(基于建议的答案),用于检索指定参数组的所有非默认参数(将“ default.mysql-57”替换为您使用的特定参数组名称):

Get-RDSDBParameter -DBParameterGroupName default.mysql5.7 | 
  select ParameterName, ParameterValue |
  where {$_.ParameterValue -ne $null}

答案 2 :(得分:0)

aws cli可用于检索您的RDS配置。我用来将其下拉的命令如下。将YOUR_PARAMETER_GROUP_NAME替换为您的RDS参数组名称,并且--source可以是systemuserengine-default(或删除--source自变量及其将全部检索出来)。以下命令也使用jq

aws rds describe-db-parameters --db-parameter-group-name YOUR_PARAMETER_GROUP_NAME --source system | jq -r '.Parameters[] | (.ParameterName + "=" + .ParameterValue)'