2017-03-28 20 views
9

Tôi có một dự án có kết nối hoạt động bình thường trên cùng một thiết bị. Tôi đột nhiên nhận được lỗi dưới đây. Và tôi có thể kết nối từ cùng một thiết bị thông qua bàn làm việc MySQL.Lỗi hệ thống RMySQL: 10060

Lý do có thể là gì?

library(RMySQL) 

con <- dbConnect(RMySQL::MySQL(), 
       host = "xxx", 
       dbname="yyy", 
       user = "zzz", 
       password = "############") 

Error in .local(drv, ...) : 
    Failed to connect to database: Error: Lost connection to MySQL server at 'reading authorization packet', system error: 10060 

Và đây là các thông tin phiên

> sessionInfo() 
R version 3.3.1 (2016-06-21) 
Platform: x86_64-w64-mingw32/x64 (64-bit) 
Running under: Windows >= 8 x64 (build 9200) 

locale: 
[1] LC_COLLATE=English_United States.1252 LC_CTYPE=English_United States.1252 
[3] LC_MONETARY=English_United States.1252 LC_NUMERIC=C       
[5] LC_TIME=English_United States.1252  

attached base packages: 
[1] stats  graphics grDevices utils  datasets methods base  

other attached packages: 
[1] RMySQL_0.10.10 DBI_0.4-1  

loaded via a namespace (and not attached): 
[1] tools_3.3.1 
+1

Tôi có cùng sự cố nhưng không thể hoàn nguyên. Tôi có MySQL workbench cài đặt và làm việc đúng là tốt, với RMySQL không. Vấn đề của tôi cũng bắt đầu tuần trước. –

Trả lời

6

Mã của tôi bắt đầu có vấn đề chính xác này sau khi thực hiện một hệ thống rộng cập nhật gói trên 2017/03/29 lần đầu tiên kể từ 2017/02/01.

Nhìn vào phiên bản cho RMySQL, RMySQL_0.10.9.tar.gz bố 2016/05/08 15:39 RMySQL_0.10.10.tar.gz bố 2017-03-21 07:50

tôi hoàn nguyên phiên bản của tôi để 0.10.9 và vấn đề đi đi:

require(devtools) 
install_version("RMySQL", version = "0.10.9", repos = "http://cran.us.r-project.org") 

tôi gửi vấn đề của bạn vào trang lỗi RMySQL, vì vậy chúng ta sẽ thấy nếu họ giải quyết nó

+0

Cảm ơn. Tôi đã gỡ cài đặt R, Rstudio, Rtools và sử dụng các phiên bản tôi sử dụng trên thiết bị khác và nó hoạt động. Tuy nhiên, nó sẽ là tốt để đảm bảo vấn đề này có liên quan đến các phiên bản. – OmaymaS

+0

Khi tôi cố gắng cài đặt phiên bản cũ hơn để được tư vấn, tôi nhận được: '> install_version (" RMySQL ", phiên bản =" 0.10.9 ", repos =" http://cran.us.r-project.org ") Tải xuống gói từ url: http://cran.us.r-project.org/src/contrib/Archive/RMySQL/RMySQL_0.10.9.tar.gz /bin/tar: Không thể thực thi shell từ xa: Không có tệp nào như vậy hoặc thư mục /bin/tar: C \: \\ Người dùng \\ HPPC ~ 1 \\ AppData \\ Địa phương \\ Temp \\ Rtmps5RBpn \\ tệp1f8436b560b8.tar.gz: Không thể mở: Lỗi I/O /bin/tar: Lỗi không thể phục hồi: thoát bây giờ Lỗi: Có vẻ như không phải là gói R (không có MÔ TẢ) ' – OmaymaS

+1

hoàn nguyên về phiên bản trước chưa giải quyết được vấn đề cho tôi. Vẫn nhận được cùng một lỗi. – TUSHAr

0

tôi đã kiểm tra một versio mới nhất n của gói RMySQL gần đây, RMySQL_0.10.11.zip Vấn đề tồn tại trong đó. Xin lỗi, không thể nhận xét là không được phép hiện tại, do đó muốn cập nhật về phiên bản mà vấn đề vẫn đang được xem.

Thông tin cá Kết nối với MySQL trên hệ thống của tôi là làm việc kể từ

1) cmdline

2) MySQL Workbench

3) về Tableau

4) Excel

Nó không hoạt động trên R. Tôi đã kiểm tra sau

link1

link2

link3

SHOW GLOBAL STATUS like 'Aborted%clients%';

Và mỗi kết nối thời gian được giảm từ R, giá trị của biến trên đi 1. Ngay cả làm

SET GLOBAL connect_timeout = 10;

đã không giúp.

CẬP NHẬT

Có một sự phụ thuộc/yêu cầu về PERL phải được cài đặt để sử dụng các RMySQL? Hiện tại, hệ thống của tôi không có PERL. nếu yêu cầu này thực sự đúng, thì đó có thể là 1 lý do và có thể là phiên bản mới nhất đã khắc phục sự cố.Vui lòng cho tôi biết về sự phụ thuộc PERL?

0

Tôi đã có thể khắc phục sự cố này trên PC của mình bằng R 3.4 bằng cách làm theo lời khuyên của @ Page để xem xét phiên bản gói. Tuy nhiên, tôi không chỉ cần cài đặt phiên bản cũ hơn của RMySQL (hoàn nguyên từ 0.10.11 đến 0.10.9), tôi cũng cần thay đổi các phiên bản trên gói phụ thuộc DBI của nó (hoàn nguyên từ 0,6-1 đến 0,5), bằng cách sử dụng như sau lệnh:

require(devtools) 
install_version("DBI", version = "0.5", repos = "http://cran.us.r-project.org") 
install_version("RMySQL", version = "0.10.9", repos = "http://cran.us.r-project.org") 
Các vấn đề liên quan