Próbuję połączyć się ze zdalną bazą Postgres z trybem ssl = verify ca
. Mój problem wydaje się podobny do Connect to Redshift via SSL using R i Connect to Postgres via SSL using R, ale nie działają one poprawnie. Błąd jest zawszeJak połączyć się ze zdalnym PostgreSQL-em z R, wymagane jest sprawdzenie poprawności certyfikatu
Error in postgresqlNewConnection(drv, ...) : RS-DBI driver: (could not connect (null)@datadb1 on dbname "(null)"
Mój kod jest coś takiego
library("RPostgreSQL")
host = 'datadb1'
dbname = 'test'
port = 5432
password = pw
username = 'pep'
pg_dsn = paste0(
'dbname=', dbname, ' ',
'sslrootcert=', "C://root-ca.crt", ' ',
"sslkey=C://pep.key", " ",
"sslcert=C://pep.crt",
'sslmode=verify-ca'
)
dbConnect(RPostgreSQL::PostgreSQL(), dbname=pg_dsn, host=host,
port=port, password=password, user=username)
nie jest to ogólny problem w bazie jednak, bo jestem w stanie połączyć się z db przy użyciu Pythona. Aktualizacja: Popełniłem błąd przy określaniu ścieżki; błąd jest następujący:
Error in postgresqlNewConnection(drv, ...) : RS-DBI driver: (could not connect [email protected] on dbname "test")
Gdybym tylko kropla wszystkich certyfikatów SSL i uruchomić powyższy kod, to jest błąd: 'Błąd w postgresqlNewConnection (DRV, ...): RS-DBI kierowca: (nie mógł połączyć pep @ datadb1 na dbname "test" ) '. Myślę, że czytałem gdzieś, że RPostgreSQL nie obsługuje połączeń SSL, więc może będę musiał całkowicie przełączyć bibliotekę – Pep
Dobra, zredagowałem odpowiedź, by wypróbować jeszcze kilka rzeczy. –
Dziękuję za trudność ustawienia i za cierpliwość. Zrobiłem dwa punkty, o których wspomniałeś, ale wciąż podajesz ten sam błąd. Poprosiłem kilka osób o sprawdzenie go na wypadek, gdyby mi brakowało czegoś, ale nie. Zastanawiam się nad sposobem na stworzenie powtarzalnego przykładu, ale nie mogę o tym myśleć w tej chwili. – Pep