ubuntuusers.de

Auf mysql Datenbank zugreifen

Status: Ungelöst | Ubuntu-Version: Ubuntu 18.10 (Cosmic Cuttlefish)
Antworten |

haiflosse

Anmeldungsdatum:
27. September 2014

Beiträge: 56

Hallo! Ich möchte mit einem sql Reader SQL Manager auf meinen nginx Webserver auf meine mysql Datenbank zugreifen. Leider bekomme ich immer folgende Meldung: [DBNETLIB][ConnectionOpen (Connect().]SQL Server existiert nicht oder Zugriff verweigert.

Hoffe es kann mir jemand weiterhelfen, wo ich die richtigen Zugangsdaten am nginx Server finde damit ich mit dem sql Manager auf die mysql Daten zugreifen kann. Vielen dank für jede Antwort

ChickenLipsRfun2eat Team-Icon

Anmeldungsdatum:
6. Dezember 2009

Beiträge: 12067

Ich kenne dein Wunschpogramm nicht, aber wieso über nginx? Normalerweise gibt man doch den sql-Server selbst als Ziel an. Kannst du dein gewünschtes Setup ein wenig genauer beschreiben? Wer ist der Serveradmin? Der muss zunächst sicherstellen, dass die Datenbank auch von außen erreichbar ist.

haiflosse

(Themenstarter)

Anmeldungsdatum:
27. September 2014

Beiträge: 56

Vielen Dank für die Antwort. Da ich leider nicht genau auskenne habe ich auch den Webserver nginx angegeben. Dachte es sei weichtig. Die mysql Datenbank ist direkt von außen erreichbar. Mir geht es nur darum, wo am Webserver ich die notwendigen Daten (Host, Benutzername und Passwort) finde um dies dann bei SQL Manager einzugeben.

Ich möchte dann damit mit sql Kommandos über SQL Manager mir die Daten anzeigen lassen anstatt mich per ssh auf den Webserver zu verbinden und dann dort die mysql Kommandos auszuführen.

Hoffe auf eine weitere Antwort. Vielen Dank

ChickenLipsRfun2eat Team-Icon

Anmeldungsdatum:
6. Dezember 2009

Beiträge: 12067

Die findest du hoffentlich nicht über den Webbrowser ☺

Bleiben wir bei MySQL. Der Daemon läuft auf dem Server und hält die Datenbank(en) bereit. Für dich als externen Nutzer gibt es einen angelegten Nutzer mit Passwort für die Datenbank(en), der vom Admin in MySQL angelegt wurde. Wo genau du die Daten eingibst, weiß ich natürlich nicht, aber für gewöhnlich lauscht MySQL auf Port 3306. Wäre dann also derserver.tld:3306 als Server, so wie der dir zugewiesene Nutzername und das Passwort.

Angenommen du hast deine MySQL-DB z.B. bei deinem Anbieter, dann bekommst du von denen kryptische Nutzernamen und Passwörter für den generellen Zugriff, müsstest aber weitere Benutzer selbst anlegen.

haiflosse

(Themenstarter)

Anmeldungsdatum:
27. September 2014

Beiträge: 56

Danke für die Antwort. Angeblich sollte es eine Config Datei am Server geben, wo ich die Passwörter der Benutzer der mysql Datenbank finden kann. Vielleicht kann mir da jemand noch weiterhelfen. Vielen Dank

ChickenLipsRfun2eat Team-Icon

Anmeldungsdatum:
6. Dezember 2009

Beiträge: 12067

Das kannst du dem oben bereits verlinkten Wiki-Eintrag entnehmen.

haiflosse

(Themenstarter)

Anmeldungsdatum:
27. September 2014

Beiträge: 56

Vielen Dank für die Antwort. Über diesen Link konnte ich nur Informationen finden wie ich das Passwort ändern kann oder habe ich da etwas übersehen? Danke nochmals

ChickenLipsRfun2eat Team-Icon

Anmeldungsdatum:
6. Dezember 2009

Beiträge: 12067

Ja, du kannst diese auch nur ändern. Die Passwörter selbst sind nicht auslesbar und werden als Hash gespeichert. Daher kann man ein vergessenes Passwort auch nur zurücksetzen, nicht aber auslesen.

Anzeigbar mit:

1
SELECT user, authentication_string FROM mysql.user;

haiflosse

(Themenstarter)

Anmeldungsdatum:
27. September 2014

Beiträge: 56

Danke für die Antwort. D. H. den authentication_string kann man auch nicht umwandeln so das man das Passwort bekommt? Danke und lg

Cranvil

Anmeldungsdatum:
9. März 2019

Beiträge: 990

Ich bin mir nicht sicher, wie egal dir deine Daten sind oder eben der Server, aber aufgrund der bisher erhaltenen Informationen habe ich die Befürchtung, dass du planst, eine unverschlüsselte Direktverbindung zum Datenbankserver aufzubauen. Unberücksichtigt der Tatsache, dass CIA, NSA und BKA bestimmt nicht bei dir anfangen, Geheimnisse auszugraben, ist das dennoch grundsätzlich keine gute Idee.

Wenn du dein lokales SQL-Tool gern weiterverwenden möchtest, empfehle ich dir (oder deinem Datenbankadmin), zumindest für entfernte Anmeldungen TLS zu aktivieren. In diesem Zuge bietet es sich vielleicht sogar an, mit Client-Zertifikaten zu arbeiten, wenn MySQL das unterstützt. Das entspricht in etwa der Public Key-Authentisierung und hat den Vorteil, dass externe Angreifer (durchaus auch einfach nur automatisierte Systeme von 0815-Spammern und Kryptogeneratoren) sich mangels Passwortanmeldung Zugang verschaffen können.

Wenn du sowieso einen Webserver auf dem Host betreibst (die Erwähnung von nginx macht den Eindruck), könnte MySQL/Werkzeuge (Abschnitt „phpMyAdmin“) vielleicht ein für dich geeignetes Werkzeug sein. Hier gilt natürlich auch wieder, dass der Webserver die Verbindung mittels TLS absichern sollte. Vorteil: Zugriff geht auch von Rechnern, auf dem dein Werkzeug nicht installiert ist, und du musst nur einen Dienst vor der bösen Außenwelt schützen (nginx) anstelle von zweien (nginx und mysql).

Das nur so am Rande.

ChickenLipsRfun2eat Team-Icon

Anmeldungsdatum:
6. Dezember 2009

Beiträge: 12067

haiflosse schrieb:

D. H. den authentication_string kann man auch nicht umwandeln so das man das Passwort bekommt?

Es gibt keine Funktion dafür, nein.

Cranvil schrieb:

Das nur so am Rande.

+1

Antworten |