Neues XAMPP neue MySQL.Data.dll

  • VB.NET
  • .NET (FX) 4.5–4.8

Es gibt 4 Antworten in diesem Thema. Der letzte Beitrag () ist von mgbig.

    Neues XAMPP neue MySQL.Data.dll

    Hallo !

    Ich habe in meinem lokalen Netzwerk XAMPP laufen und greife mit VB auf die MYSQL Datenbank zu. Das funtioniert seit ca. 5 Jahren alles super (Windows 7). Dank Windows 10 muss ich jetzt aber alles neu aufsetzen. Also die neuste Version von XAMPP installiert. V 7.4.1 Mit all den neuen Versionen bekomme ich aber keinen Zugriff mehr auf meine Datenbank. Ich habe auch eine neue Version der MySQL.data.dll (8.0.17.0) heruntergeladen und im Projekt auf diese verwiesen.
    So sieht der Code aus, der auf mit dem alten MYSQL Server prima läuft und mir auf dem neuen eine Fehlermeldung ausgibt.

    Quellcode

    1. Dim JConString As String = "server=192.xxx.xxx.xxx;user id=nutzer;password=1234;database=datenbank"
    2. Dim conn As MySql.Data.MySqlClient.MySqlConnection
    3. conn = New MySql.Data.MySqlClient.MySqlConnection
    4. conn.ConnectionString = JConString
    5. conn.Open()
    6. Dim myAdapter As New MySql.Data.MySqlClient.MySqlDataAdapter
    7. Dim SQLAbfrage As String = "SELECT * FROM tabelle"
    8. Dim myCommand As New MySql.Data.MySqlClient.MySqlCommand
    9. myCommand.Connection = conn
    10. myCommand.CommandText = SQLAbfrage
    11. myAdapter.SelectCommand = myCommand
    12. Dim myData As MySql.Data.MySqlClient.MySqlDataReader
    13. myData = myCommand.ExecuteReader()
    14. Do While myData.Read()
    15. lstList.Items.Add(myData("feld").ToString)
    16. Loop
    17. conn.Close()


    Ich bekomme diese Fehlermeldung, wenn ich mit der alten DLL arbeite, in Zeile 7:
    "Ein Ausnahmefehler des Typs "System.Collections.Generic.KeyNotFoundException" ist in mscorlib.dll aufgetreten.
    Zusätzliche Informationen: Der angegebene Schlüssel war nicht im Wörterbuch angegeben."

    Wenn ich die neue DLL einbinde startet die Ausfühung erst gar nicht mit diesem Fehler in Zeile 3 (und in mehreren anderen Zeilen):
    "Der Typ "MySql.Data.MySqlClient.MySqlDataReader" ist nicht definiert."

    Ein Zugriff auf die Datenbank ist offensichtlich da. Wenn ich das Passwort falsch eingebe, gibt es die Fehlermeldung:
    " Access denied for user ....." (wenn ich die alte DLL einbinde)

    Ist vielleicht die neue DLL falsch? Welches ist die richtige Quelle dafür?
    Oder wo liegt das Problem?

    Danke für Hilfe mgbig
    Ich bin Umsteiger: Früher VB 4.0 prof, heute VB NET unter Studio 2019 Community Edition (und da noch ein Greenhorn :D )
    Wenn du von ausserhalb zugreifst dann musst du natürlich auch erstmal Konfigurieren das dein MySQL Server da auch von aussen erreichbar ist.
    Port freigabe.
    in der Mysql config schauen auf welcher ip der gebindet ist.
    dem user die rechte geben das er von aussen zugreifen darf.

    Das alles schon gecheckt?
    Grüße , xChRoNiKx

    Nützliche Links:
    Visual Studio Empfohlene Einstellungen | Try-Catch heißes Eisen
    Hallo zusammen

    Erst mal Danke für die Antworten. Bei allem muss ich ein wenig schauen, ob und wenn ja, was ich davon habe. Da ich Anfang nächster Woche nicht am PC sitze kann das etwas dauern.

    @EaranMaleasi Muss ich das ganze Paket auf dem 'Rechner ohne die Datenbank' instalieren, bzw. schadet es etwas, wenn auch der MYSQL Server mit installiert wird?

    @xChRoNiKx Ich habe nach bind-adress gesucht, diese auskommentiert und vorerst auf 0.0.0.0 gesetzt. Der Nutzer hat als alle Rechte, als hostname % und meinen Nummernkreis hinten mit .% - Das einzige was ich nicht gefunden habe ist die Portfreigabe. Ich hab in der alten Installation keine bind-adress geändert und keine Ports freigegeben (kann mich da jedenfalls nicht daran erinnern). Was auffällt: In der alten Umgebund gibt es den Nutzer unter phpmyadmin 1 mal mit host 'Mein Nummernkreis.%' in der neuen Installation taucht der Nutzer 2x auf mit 1x % und 1x 'Mein Nummernkreis.%' - habe ich das so hinbekommen?

    mgbig
    Ich bin Umsteiger: Früher VB 4.0 prof, heute VB NET unter Studio 2019 Community Edition (und da noch ein Greenhorn :D )