bash - 使用命令行界面将 init_connect 设置为 Amazon RDS 参数组中带有空格的字符串会出现格式错误的错误

标签 bash amazon-rds

我正在尝试将 init_connect 参数设置为“SET NAMES utf8”

rds-modify-db-parameter-group mygroup --parameters="name=init_connect, value='SET NAMES utf8', method=immediate"

但失败了:

rds-modify-db-parameter-group:  Malformed input-No value separator = found in NAMES

我还没有找到任何例子来说明如何做到这一点。是否可以?有什么方法可以逃脱我所缺少的吗?

最佳答案

我在尝试使用 init_connect='SET AUTOCOMMIT=0' 时遇到了同样的问题,但是,还有另一种方法可以解决您的问题,那就是使用以下方法:

rds-modify-db-parameter-group mygroup -p“name=skip-character-set-client-handshake,value=TRUE,method=pending-reboot”

这有效地完成了与在连接上强制“设置名称'utf8'”相同的事情。它将忽略客户端信息并使用默认的服务器字符集。当然,您必须确保默认服务器字符集是 UTF8(默认情况下不是)。因此,请将以下参数添加到您的组中:

rds-modify-db-parameter-group mygroup -p“name=character_set_server,value=utf8,method=immediate”-p“name=collat​​ion_server,value=utf8_general_ci,method=immediate”

关于bash - 使用命令行界面将 init_connect 设置为 Amazon RDS 参数组中带有空格的字符串会出现格式错误的错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4611645/

相关文章:

mysql - LOAD DATA LOCAL INFILE 在 RDS 中不起作用

bash - 无法在后台 shell 中捕获 SIGINT 信号

linux - bash/linux 的简单一行,检查 PNG 是否有效?

bash 遍历除给定数字以外的数字列表

bash - Unix:Bash:使用 head 命令后脚本会出现

bash - 如何在 awk 脚本中使用 shell 变量?

amazon-web-services - 指定的 VPC 不支持 DNS 解析、DNS 主机名或两者。更新 VPC,然后重试

sql - 错误消息 : "PostgreSQL said: could not write block 119518 of temporary file: No space left on device" PostgreSQL

postgresql - 通过 Terraform 创建 RDS 实例后向数据库添加 Postgresql 角色

amazon-web-services - 对数据库使用RDS还是容器(ECS)?的优点和缺点