[Исходное сообщение]
Я видел пару подобных вопросов SO, но я не думаю, что какой-либо из них связан с ОС.
Короче говоря, это то, что я вижу, когда пытаюсь установить ssl-соединение с Redshift.
library(RPostgreSQL)
drv <- dbDriver("PostgreSQL")
con <- dbConnect(drv,
host = "XXXXXXXX.us-east-1.redshift.amazonaws.com",
port = 5439,
user = "XXXXXXXX",
password = "XXXXXXXX",
dbname = "db1")
> Error in postgresqlNewConnection(drv, ...) :
RS-DBI driver: (could not connect [email protected] on dbname "db1")
Я пробовал следующее, и ни один из них не работал.
- Подключение к Redshift через SSL с помощью R
- Импорт файлов из PostgreSQL в R
- Подключение к Postgres через SSL с использованием R
- https://groups.google.com/forum/#!topic/rpostgresql-dev/ELnVUJqjDbk
У меня есть узел EC2 (Ubuntu) в AWS и еще один Mac Pro в офисе, поэтому я попытался использовать один и тот же код для подключения с обоих.
Система Linux работает с копированием и вставкой одного и того же кода. Вот Sys.info()
на сервере Linux:
sysname Linux
release 3.13.0-48-generic
version #80-Ubuntu SMP Thu Mar 12 11:16:15 UTC 2015
nodename ip-xx-xxx-xx-xx
machine x86_64
login unknown
user bcui
effective_user bcui
Однако Mac Pro вышел из строя с точно таким же сообщением об ошибке. Вот Mac Sys.info()
(такой же, как мой ноутбук Mac):
sysname Darwin
release 15.3.0
version Darwin Kernel Version 15.3.0:
Thu Dec 10 18:40:58 PST 2015;
root:xnu-3248.30.4~1/RELEASE_X86_64
nodename bcui-MBP.local
machine x86_64
login bcui
user bcui
effective_user bcui
Мне интересно, что может отличаться между конфигурацией Mac и Linux, которая вызывает это сообщение об ошибке?
[Обновление от 10 февраля 2016 г.]
Я попытался удалить R и все связанные файлы, а затем переустановить R из доморощенного:
brew tap homebrew/science
brew install R
То же сообщение об ошибке:
> Error in postgresqlNewConnection(drv, ...) :
RS-DBI driver: (could not connect [email protected] on dbname "db1")
К вашему сведению, я могу подключиться к другим кластерам Redshift без SSL, используя тот же код, так что это может быть связано с openssl на Mac.
[Обновление от 11 февраля 2016 г.]
Дополнительная информация из комментария @MasashiMiyazaki:
Я использовал psql
через интерфейс командной строки для подключения, и он отлично работает. Кроме того, я также могу успешно подключиться с помощью модуля Python psycopg2
. Однако мне придется отключить эту строку из .bash_profile
, чтобы они работали:
export DYLD_LIBRARY_PATH=/usr/lib:$DYLD_LIBRARY_PATH
psql
для подключения, и он отлично работает. Кроме того, я также пробовал модуль Pythonpsycopg2
, и он тоже отлично работает. - person Boxuan   schedule 11.02.2016RJDBC
+ банки с красным смещением ( docs.aws.amazon.com/redshift/latest/mgmt/ )? Это хорошо работает для меня - person arvi1000   schedule 11.02.2016Error in .jinit(classPath) : JNI_GetCreatedJavaVMs returned -1
. Возможно, это относится к отдельному вопросу SO. Я не пошел по этому пути, так как все мои существующие настройки основаны наRPostgreSQL
. Однако я мог бы попытаться решить проблему JVM, если не вижу решения для этого. - person Boxuan   schedule 12.02.2016echo $JAVA_HOME
возвращает вам/Library/Java/JavaVirtualMachines/jdk1.8.0_45.jdk/Contents/Home
? Спасибо! - person Boxuan   schedule 12.02.2016ssh -i ~/.ssh/YOUR-KEY.pem -L 5439:localhost:5439 [email protected]
это перенаправляет ваш локальный порт 5439 на порт сервера 5439. Затем попробуйте в R подключиться кlocalhost:5439
. Для получения дополнительной информации см. docs.aws.amazon. com/ElasticMapReduce/latest/DeveloperGuide/ - person Rentrop   schedule 13.02.2016