2016-02-01 6 views
8

पर RPostgreSQL साथ लाल विचलन के लिए [मूल पोस्ट]कनेक्ट आर मैक 10.11.3

मैं समान अतः सवालों के एक जोड़े को देखा है लेकिन मुझे नहीं लगता कि उनमें से किसी ओएस से संबंधित हैं।

लंबी कहानी छोटी, यह मैं देखता हूं जब मैं 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") 

मैंने निम्नलिखित की कोशिश की है और उनमें से कोई भी काम नहीं किया है।

  1. Connect to Redshift via SSL using R
  2. Importing files from PostgreSQL to R
  3. Connect to Postgres via SSL using R
  4. https://groups.google.com/forum/#!topic/rpostgresql-dev/ELnVUJqjDbk

मैं एक EC2 नोड (उबंटू) एडब्ल्यूएस और एक अन्य मैक प्रो कार्यालय में में है, इसलिए मैं एक ही कोड का उपयोग करने की कोशिश की दोनों से कनेक्ट करने के लिए।

लिनक्स सिस्टम & को उसी कोड चिपकाने के साथ काम करता है। यहाँ लिनक्स सर्वर पर Sys.info() है:

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 

हालांकि, मैक प्रो ठीक उसी त्रुटि संदेश के साथ विफल रहा है। यहाँ मैक Sys.info() (के रूप में मेरे मैक लैपटॉप ही) है:

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 

मैं सोच रहा हूँ क्या मैक और लिनक्स विन्यास है कि इस त्रुटि संदेश के कारण बीच अलग-अलग हो सकता है?

[अपडेट 2016/02/10]

मैं homebrew से आर और सभी संबंधित फ़ाइलें स्थापना रद्द करने, और उसके बाद फिर से स्थापित अनुसंधान की कोशिश की है:

brew tap homebrew/science 
brew install R 

एक ही त्रुटि संदेश:

> Error in postgresqlNewConnection(drv, ...) : 
    RS-DBI driver: (could not connect [email protected] on dbname "db1") 

एफवाईआई, मैं एक ही कोड का उपयोग कर अन्य गैर-एसएसएल रेडशिफ्ट क्लस्टर से कनेक्ट कर सकता हूं, इसलिए यह मैक पर openssl से संबंधित कुछ हो सकता है।

[अपडेट 2016/02/11]

@ MasashiMiyazaki की टिप्पणी से और जानकारी:

मैं CLI के माध्यम से psql का इस्तेमाल किया है कनेक्ट करने के लिए है और यह ठीक काम करता है। इसके अलावा, मैं पाइथन मॉड्यूल psycopg2 का उपयोग करके सफलतापूर्वक कनेक्ट भी कर सकता हूं।

export DYLD_LIBRARY_PATH=/usr/lib:$DYLD_LIBRARY_PATH 
+0

कृपया आप अन्य सिस्टम जानकारी की जरूरत है मुझे पता है जैसे कि यह स्थापित करें ताकि मैं ओपी में प्रदान कर सकते हैं। – Boxuan

+0

क्या आपने कभी अपने मैकोज़ मशीन से अपने Redshift तक पहुंचने के लिए "psql" (PostgreSQL क्लाइंट कमांड) का प्रयास किया है? –

+0

@ मसाशी मियाज़ाकी हां मैंने कनेक्ट करने के लिए 'psql' का उपयोग किया है और यह ठीक काम करता है। इसके अलावा, मैंने पायथन मॉड्यूल 'psycopg2' भी कोशिश की है और यह भी ठीक काम करता है। – Boxuan

उत्तर

3

अंधेरे में एक शॉट ले रहा है यहां: हालांकि, मैं उन्हें काम करने के लिए आदेश में अक्षम.bash_profile से इस लाइन करना होगा। क्या आपने RPostgres की कोशिश की है?

, तो

# install.packages("devtools") 
devtools::install_github("RcppCore/Rcpp") 
devtools::install_github("rstats-db/DBI") 
devtools::install_github("rstats-db/RPostgres") 

तो यह परीक्षण

library(DBI) 
library(RPostgres) 

con <- dbConnect(RPostgres::Postgres(), 
      host = "XXXXXXXX.us-east-1.redshift.amazonaws.com", 
      port = 5439, 
      user = "XXXXXXXX", 
      password = "XXXXXXXX", 
      dbname = "db1") 
+0

पिछली बार मैंने कोशिश की और यह काम नहीं किया, और यह इस समय काम करता है। यकीन नहीं है कि क्या बदल गया है। – Boxuan

+0

बहुत बढ़िया! मुझे खुशी है कि यह काम करता है। – JackStat

+0

अभी भी 2017 – lowndrul

संबंधित मुद्दे