1

我无法通过 RPostgreSQL 包将我的 R 客户端连接到 redshift,尽管它可以通过 psql 轻松工作。我已经尝试下载和获取 redshift-ssl-ca-cert.pem 文件,但这似乎仍然不起作用。有什么想法可能导致这种情况吗?这是我的 R 代码:

library("RPostgreSQL")

drv <- dbDriver("PostgreSQL")    
host = 'host.com'
dbname = 'dbname'
port = 1234
password = 'password'
username = 'user'
redshift_cert = paste0(FILE_PATH, 'redshift-ssl-ca-cert.pem')
pg_dsn = paste0(
  'dbname=', dbname, ' ',
  'sslrootcert=', redshift_cert, ' ',
  'sslmode=verify-full'
)

con <- dbConnect(drv, dbname=pg_dsn, host=host, port=port, password=password, user=username)

我总是收到这个错误信息

Error in postgresqlNewConnection(drv, ...) : 
  RS-DBI driver: (could not connect user@host.com on dbname "dbname"
)

同时这个使用 psql 的命令完美地工作

psql 'host=host.com dbname=dbname sslmode=require port=1234 user=user password=password'

我还尝试了 sslmode 的其他变体,包括要求和允许 R 代码,但没有任何效果。将不胜感激任何想法谢谢!

4

0 回答 0