看板 R_Language 關於我們 聯絡資訊
[問題類型]: 程式諮詢 [軟體熟悉度]: 使用者(已經有用R 做過不少作品) [問題敘述]: 我在linux Centos7.3的環境下使用linux本機端的R-3.4.0,結果出現segment fault(core dump) 但使用同一台linux的RStudio server IDE執行相同code,可正常執行. 確認linux本機端開啟的R與RStudio server開啟的都是/srv/lib64/R/bin/R <---都是它 因為需要使用到linux排程執行R code,所以如果linux本機端的R無法正常運作, 排程執行就會有問題 [程式範例]: 我主要目的在使用JDBC連結資料庫MSSQL,同樣指令使用RStudio server IDE是可以運行 且正常抓SQL資料做後續運算,但使用本機端R-3.4.0卻不行 library(RJDBC) drv <- JDBC("com.microsoft.sqlserver.jdbc.SQLServerDriver", "/etc/jdbc/sqljdbc4.jar", identifier.quote="`") 執行此行會直接跳出segment fault(core dump)後強制離開R,回到linux命令提示字元 [環境敘述]: 明天進公司待補... [關鍵字]: segment fault(core dump) -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 182.235.1.52 ※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1498743600.A.191.html ※ 編輯: likuyun (182.235.1.52), 06/29/2017 21:43:45 ※ 編輯: likuyun (182.235.1.52), 06/29/2017 21:47:19
celestialgod: 你是用crontab? 06/29 22:01
celestialgod: crontab通常環境變數都不夠,要設定 06/29 22:01
celestialgod: 像是我都要給JAVA路徑在PATH中、給JAVA_HOME 06/29 22:02
celestialgod: 給Oracle的so檔案 (for ROracle)等 06/29 22:02
likuyun: 是的 我是用crontab 06/29 22:03
celestialgod: so檔案的連結是放在 LD_LIBRARY_PATH裡面 06/29 22:04
likuyun: 明天試看看 環境變數PATH中 加入 JDBC的資料夾絕對路徑 06/29 22:05
celestialgod: JAVA是放$JAVA_HOME/jre/lib/amd64/server 06/29 22:05
celestialgod: PATH中放入上述的位置 06/29 22:05
celestialgod: 反正先用library(rJava)測試crontab是否可以正常 06/29 22:06
celestialgod: 然後測試.jinit是否可以正確吃到jar檔案 06/29 22:06
celestialgod: 最後才去試RJDBC 06/29 22:06
celestialgod: 不過我JDBC連法跟你不同@@ 06/29 22:07
celestialgod: 我是用.jinit 參數classpath放需要的jar檔案 06/29 22:08
celestialgod: 然後直接開JDBC 06/29 22:08
celestialgod: 另外因為Java容易GC overhead,還有放-Xmx8g的參數 06/29 22:08
likuyun: -Xmx8g 我都用到32G 但這次問題我搞好久搞不定 06/29 22:11
celestialgod: 反正你照我的測試方法走一次看看,不行再來找問題QQ 06/29 22:13