postgresql - Terraform postgres 导入失败
问题描述
嗨,我正在导入资源,但它失败了。我不确定问题是什么。有人可以指出我如何解决这个错误。
我尝试通过设置sslmode = "require"
,得到了同样的错误。我的 sslon
在数据库中,而 force.ssl 是off
Terraform v0.12.20
provider.aws v2.58.0 provider.postgresql v1.5.0 您的 Terraform 版本已过期!最新版本
我的模块:locals.tf:
pgauth_dbs = var.env == "prod" ? var.prod_dbs : var.stage_dbs
变量.tf
variable "stage_dbs" {
type = list(string)
default = ["host_configs", "staging", "staging_preview"]
}
提供者
provider "postgresql" {
version = ">1.4.0"
alias = "pg1"
host = aws_db_instance.name.address
port = aws_db_instance.name.port
username = var.username
password = var.master_password
expected_version = aws_db_instance.name.engine_version
sslmode = "disable"
connect_timeout = 15
}
模块:
resource "postgresql_database" "pgauth_dbs" {
provider = postgresql.pg1
for_each = toset(local.pgauth_dbs)
name = each.value
owner = "postgres"
}
根模块:
module rds {
source = ../../../../tf_module_rds
username = "postgres"
master_password = data.aws_kms_secrets.secrets_password.plaintext["password"]
engine_version = "11.5"
instance_class = "db.m5.xlarge"
allocated_storage = "300"
storage_type = "gp2"
}
terraform import module.rds.postgresql_database.name_dbs[“host_configs”] host_configs
module.rds.postgresql_database.name_dbs[“host_configs”]: Importing from ID “host_configs”…
module.rds.postgresql_database.name_dbs[“host_configs”]: Import prepared!
Prepared postgresql_database for import
module.rds.postgresql_database.name_dbs[\“host_configs”\]: Refreshing state… [id=host_configs]
Error: could not start transaction: pq: no PostgreSQL user name specified in startup packet
解决方案
提供者应该指向实例的用户名而不是变量
provider "postgresql" {
version = ">1.4.0"
alias = "pg1"
host = aws_db_instance.name.address
port = aws_db_instance.name.port
username = aws_db_instance.name.username
password = aws_db_instance.name.password
database = aws_db_instance.name.name
expected_version = aws_db_instance.name.engine_version
sslmode = "disable"
connect_timeout = 15
}
推荐阅读
- database - 带有外键的模型上的restfull api
- scala - SBT 本机打包程序不会将文件复制到 Docker 映像
- java - Selenium WebDriver Java keyDown not working
- java - 多线程可以在多核处理器中并行运行吗
- asp.net - 如何从 HttpRequestMessage 获取输入参数
- excel - 从excel中的日期单元格中提取字符
- python - 在 Django 项目中为可重用应用程序创建基于类的 Celery 任务
- javascript - 如何仅使用 Javascript 动态创建带有上一个和下一个按钮的图像视频缩略图滑块?
- javascript - .modal-content 用于不同的模态(react-bootstrap)
- android - Android(Firestore):无法在 Firestore 中已创建的文档中添加、更新或设置(SetOptions.merge)字段