Wie verbinde ich R mit MySQL oder wie installiere ich das RMySQL-Paket?

8

Ich bin neu in R und versuche R mit MySQL zu verbinden. Ich habe mysql-5.5.22-winx64 und R-2.12.0 für 64 Bit installiert. Ich habe MYSQL_HOME environment path(C:\Program Files\MySQL\MySQL Server 5.5) bereits festgelegt und versucht, diese Schritte zu befolgen:

  1. Installieren Sie die neuesten RTools von hier
  2. install MySQL oder Header und Bibliotheksdateien von mysql
  3. Erstellen oder bearbeiten Sie die Datei C:\Program Files\R\R-2.12.1\etc\Renviron.site und fügen Sie eine Zeile wie MYSQL_HOME=C:/mysql (Pfad zu Ihren mysql-Dateien)
  4. hinzu
  5. Kopieren Sie libmysql.lib von mysql/lib nach mysql/lib/opt , um Abhängigkeiten zu erfüllen.
  6. Kopieren Sie libmysql.dll auf C:\Program Files\R\R-2.12.1\bin oder auf windows/system32 directory .
  7. Führen Sie install.packages('RMySQL',type='source') aus und warten Sie, bis die Kompilierung beendet ist. aber immer noch bekomme ich diesen Fehler: -

    %Vor%

Bitte schlagen Sie mir vor, wie kann ich dieses Problem lösen?

Endlich habe ich die Lösung: - Sie können die Lösung im Detail in meinem Blog sehen .

Ich habe für die letzten 2 Tage an der Installation von R mit RMySQL-Paket gearbeitet, endlich die Lösung dafür bekommen, hier sind die Schritte zum Installieren von RMySQL-Paket: -

  1. LADEN SIE DIE SOFTWARE VON DEN FOLGENDEN LINKS HERUNTER:

    %Vor%
  2. FOLGENDE UMGEBUNGSVARIABLEN EINSTELLEN

    %Vor%

    Stellen Sie sicher, dass die folgenden Pfade in Ihrer Windows PATH-Variablen enthalten sind:           \ Rtools \ 2.14 \ bin           \ Rtools \ 2.14 \ MinGW \ bin           \ Rtools \ 2.14 \ MinGW64 \ bin

  3. ORDNER ERSTELLEN UND DATEIEN KOPIEREN

    %Vor%
    1. BEFEHLE BEFEHLE

      a. Install.Packages: Führen Sie R GUI aus, indem Sie auf dem Desktop oder im Startmenü auf das Symbol R klicken. Art           INSTALL.PACKAGES ("RMySQL", type="Quellen").      Dies wird die erforderliche Software aus den Repositories herunterladen.

      b. Eingabeaufforderung: Kopieren Sie die heruntergeladene ZIP-Datei (in Schritt 4.a.) und fügen Sie sie in den R-Installationsordner ein.       Gehe zum Startmenü und öffne die Eingabeaufforderung. Gehen Sie in den R-Installationsordner und geben Sie R CMD INSTALL RMySQL_0.8-0.tar.gz

      ein

      * BEFEHLE:

        

      Bibliothek (RMySQL)   drv = dbDriver ("MySQL")   con = dbConnect (drv, host="localhost", dbname="test", user="root", pass="root")   album = dbGetQuery (con, Anweisung="select * from t_master")   Album *

Sharad 24.04.2012, 05:42
quelle

7 Antworten

0

Es ist keine direkte Antwort, aber dennoch können Sie es hilfreich finden:

  1. Verwenden Sie eine aktuellere Version von R (derzeit um 2.15)

  2. Auf Windows-Plattformen würde ich den RODBC + Windows-MySQL-Treiber lieber verwenden, es sei denn, Sie befinden sich in einer Umgebung mit heterogenen Plattformen (z. B. Linux und Windows), in denen Code unter Teammitgliedern stark geteilt wird. Und selbst dann, wenn man zwischen RMySQL und RODBC im selben Skript wählt, hängt es von der Plattform ab, die es ausführt, ein einfaches if() {...} else {...}

Beachten Sie, dass ich nicht sage, dass es keine Erfolgsgeschichten mit dem gibt, was Sie zu tun versuchen, aber IMHO werden Sie früher mit dem oben genannten anfangen.

    
jcb 25.04.2012, 05:21
quelle
9

Sie können nun alle komplizierten Schritte überspringen und einfach install.packages("RMySQL")

ausführen     
hadley 12.03.2015 11:12
quelle
4

Ich habe das über das Wochenende bei einem Hackathon auf Mac OSX erlebt - ich habe ganze vier Stunden gebraucht, um alles zusammenzustellen, obwohl ich ein paar Referenzmaterialien hatte (am Ende erwähnt). Ich fand keinen leichten Durchschlupf, also habe ich beschlossen, einen zu schreiben, solange es frisch ist.

Ich bin mir nicht sicher über die Kompatibilität mit Windows, aber hoffentlich werden diese Anweisungen es Ihnen auch leichter machen.

Ich habe versucht, R und MySQL in einer lokalen Umgebung zu kommunizieren (möglicherweise müssen für eine Serverumgebung Änderungen vorgenommen werden). Ich benutze XAMPP (obwohl ich RMySQL nicht für die Verbindung verwendet habe), aber am Ende konnte ich eine PHP-Seite verwenden, um eine R-Datei zu schreiben, diese Datei auszuführen und R in eine MySQL-Tabelle schreiben zu lassen. Soweit ich weiß, funktioniert das nur für MacOSX ...

Die gesamte verwendete Software war in DMG-Form, so dass keine Binärinstallation erforderlich ist.

  1. Laden Sie herunter und führen Sie einige grundlegende Befehle aus, um sicherzustellen, dass es funktioniert.

  2. In R müssen Sie RODBC installieren (falls Sie es noch nicht haben). Gib dies in die R-Konsole ein.

%Vor%

Dies installiert RODBC, aber seit OS Mavericks sind bestimmte Dateien nicht mehr enthalten, daher erhalten Sie eine Fehlermeldung

  

ODBC-Header sql.h und sqlext.h nicht gefunden

und Sie müssen die Dateien sql.h und sqlext.h an der richtigen Stelle ablegen.

Um dies am einfachsten zu machen, stellen Sie sicher, dass Sie homebrew installiert haben (einfache Anweisungen). Verwenden Sie dann diesen Code im Terminal, um die Installation durchzuführen.

Sobald das erledigt ist, gehst du noch einmal in die R-Konsole

%Vor%
  1. Suchen Sie MySQL für die entsprechende ODBC-Installation . Ich benutze Mac OSX 10.6, also habe ich das dmg heruntergeladen und installiert. Dies hat sich von selbst erledigt.

  2. Jetzt kommt der schwierige Teil. Anscheinend hat Mac OX den ODBC-Administrator nach einer kürzlich erschienenen OS-Version entfernt, also müssen Sie den ODBC-Manager herunterladen ( Ссылка ). Es ist auch eine DMG-Datei, also ziehen Sie sie einfach in Ihren Dienstprogramme-Ordner.

Ich hatte Schwierigkeiten mit der Installation von 5.3.6 dmg (wurde weiterhin fehlerhaft), daher habe ich stattdessen 5.2.7 installiert.

  1. Öffnen Sie den ODBC-Manager. Sie müssen den DSN konfigurieren, klicken Sie also auf die Registerkarte "System DSN" und klicken Sie auf "Hinzufügen".

  2. Sie erhalten ein Popup-Fenster, in dem Sie aufgefordert werden, einen Treiber auszuwählen. Meiner hatte "MySQL ODBC 5.2 Driver" basierend auf meiner MySQL ODBC Installation. OK klicken". Wenn Sie den Treiber nicht sehen, müssen Sie bestätigen, dass MySQL ODBC installiert ist.

  3. Machen Sie im nächsten Popup-Fenster den Datenquellennamen (DSN) wie Sie wollen - aber denken Sie daran, dass dies der Name ist, den Sie zum Aufrufen von R verwenden müssen. Im folgenden Keyword-Bereich (Schlüsselwörter werden in Anführungszeichen gesetzt und der Wert wird in Klammern angegeben), ADD

    "Datenbank" (mit dem Wert Ihres Datenbanknamens)

    "server" (für die lokale Umgebung verwenden Sie nicht localhost - verwenden Sie stattdessen die lokale IP-Adresse 127.0.0.1. *** Dies war das KEY-Stück für mich)

    "uid" (Datenbankbenutzer-ID)

    "pwd" (Datenbankkennwort)

    "socket" (nicht sicher, ob dies erforderlich war, aber nach mehreren Tutorials war es in meiner Konfiguration und die Dinge funktionieren, also vielleicht brauchen Sie es. Sie finden Ihren Socket-Standort in my.cnf - führen Sie eine Spotlight-Suche durch. Der Speicherort der Socket-Datei befindet sich unter CLIENT)

    So sah meine Konfiguration aus:

    DSN ("test" - das war die Spitze)

    Datenbank ("Fernseher")

    socket ("/Applications/XAMPP/xamppfiles/var/mysql.sock")

    uid ("root")

    pwd ("")

    server ("127.0.0.1")

  4. In R, führe unten aus - Ich glaube, dass diese letzten 3 Schritte jedes Mal ausgeführt werden müssen, wenn du R startest und bevor du eine MySQL-Abfrage machst.

    Bibliothek (RODBC)

  5. Stellen Sie sicher, dass Sie MySQL und Apache über das XAMPP-Kontrollfeld aktiviert haben.

  6. Dann führe

    aus

    odbcConnect ("test") - beachte, wie ich meinen DSN in Anführungszeichen gesetzt habe. Austausch wie nötig.

Dies sollte Sie zum Laufen bringen. Sie können weitere Anleitungen zum Erstellen von MySQL-Abfragen in R lesen.

Ich habe das aus einer Menge toller Beiträge auf Stack Overflow (danke alle!), zufälligen anderen Seiten / E-Mail-Austauschgeschichten und dem Buch "R in A Nutshell" von Joseph Adler gehackt, aber lass es mich wissen, wenn ich es verpasst habe etwas oder es ist unklar.

Viel Glück!

    
Elliot Koss 29.04.2013 06:06
quelle
1

Ich habe auch ein paar Stunden damit verbracht, in Windows 10 dafür zu sorgen, dass Fehler auftreten. Die Korrekturen, die ich für RMySQL gefunden habe, waren unordentlich und komplex, aber RODBC hat schmerzloser und eleganter zu einer Lösung geführt. Ich hatte R, RStudio, MySQL Server, MySQL Workbench und die folgenden zusätzlichen Schritte waren erforderlich, damit es funktioniert:

  1. Installieren Sie das Paket in RStudio install.packages(RODBC)
  2. Downloaden und installieren Sie den MySQL ODBC Connector hier
  3. Konfigurieren Sie den MySQL-ODBC-Connector. Hier sind einige Anweisungen. Suchen Sie einfach auf dem Startbildschirm von Windows 10 nach 'ODBC' und das Fenster wird geöffnet. Holen Sie sich die Verbindungsparameter richtig und benutzen Sie den Testknopf, um sicherzustellen, dass es funktioniert. Es zeigt eine Liste Ihrer Datenbanken in einem Dropdown-Menü, sobald es sich verbindet. Geben Sie unter "Datenquellenname" einen Namen ein, der in das R-Skript eingegeben wird, z. B. "mysql_odbc"

Jetzt können Sie eine Verbindung herstellen, eine Abfrage ausführen und die Verbindung trennen:

%Vor%     
cardamom 01.09.2016 10:05
quelle
0

Dies funktionierte für mich: Mit Windows XP SP3 32-Bit-Betriebssystem, R Studio, Rv2.15.3

Folgen Sie den Anweisungen von Ссылка

Wenn Sie jedoch MySQL Edition 5.6 heruntergeladen haben, müssen Sie libmysql.lib beispielsweise in diesem Pfad kopieren: D:\Program Files\MySQL\MySQL Server 5.6\lib und erstellen Sie einen neuen Ordner wie in: D:\Program Files\MySQL\MySQL Server 5.6\lib\opt und fügen Sie die obige libmysql.lib in die opt Ordner. Dann wird die Renviron.site Datei folgendes haben: MYSQL_HOME=D:/Program Files/MySQL/MySQL Server 5.6 . Bitte beachten Sie den Schrägstrich.

Befolgen Sie abschließend die Anweisungen aus der Zeile install.packages wie im obigen Link angegeben. Ich musste ein paar Versuche machen, um es endlich richtig zu machen.

    
Javiar Sandra 19.07.2013 05:36
quelle
0

Folgen Sie der Anleitung hier:

Ссылка

Ich folgte ihm und es funktionierte wie ein Zauber. :)

    
user3262061 08.02.2014 10:36
quelle
0

WENN DIESER FEHLER IN R

%Vor%

DANN VON AUSSEN R

%Vor%

UND ZURÜCK INNEN:

%Vor%

ODER NUR VON INNEN R

%Vor%     
Andre Mikulec 25.11.2013 01:15
quelle

Tags und Links