ich habe auf meinem UCS-Server (4.1) den MySQL-Server laufen. Auf den kann ich per lokaler Kommandozeile auch drauf zugreifen.
Da ich jetzt aber einige größere Anpassungen an der DB machen möchte, wollte ich mit HeidiSQL von meinem Windows-Rechner auf die Datenbank-Instanz des UCS-Servers zugreifen. Leider ohne Erfolg.
Das passende Kennwort als Root habe ich gefunden untern /etc/mysql.secret
Muss an der DB noch etwas verändert werden, bevor ich remote auf sie zugreifen kann?
da gibt’s zwei Sachen zu beachten: die Firewall und die MySQL-Authentifizierung.
Ob eine Firewall läuft und ob sie Verbindungen zu MySQL aus dem lokalen Netz zulässt, sehen Sie mit »iptables -L INPUT -nv«. Sind dort viele Zeilen enthalten, ist die Firewall aktiv. Ob Port 3306 zugelassen wird, sehen Sie (grob vereinfacht) mit »iptables -L INPUT -nv | grep 3306«.
Falls Sie den Port noch öffnen müssen:
ucr set security/packetfilter/tcp/3306/all=ACCEPT
service univention-firewall restart
Dann die MySQL-Authentifizierung. MySQL legt bei jedem User auch gleichzeitig mit fest, von welchen IP-Adressen aus er sich anmelden darf. Bei UCS wird normalerweise nur ein Account für »root« von »localhost« und vom DC Master erstellt. Wenn Sie auch von anderen Rechnern aush zugreifen wollen, so empfehle ich die MySQL-Dokumentation zu CREATE USER sowie zur Syntax der Accountnamen.
Z.B. auch die Option “bind_address”. Die steht aber seit einiger Zeit defaultmäßig auf 0.0.0.0, also “alle (IPv4-)Netzwerkinterfaces”. Vermutlich fehlt wie von Moritz Bunkus erwähnt die Ausnahme in der Firewall.
Und bitte das obligatorische “/usr/bin/mysql_secure_installation” nicht vergessen
Wenn die MySQL-Konfiguration nicht durch Univention gemanaget wird (weil das Paket univention-mysql nicht installiert ist), dann müssen Sie manuell die bind_address in /etc/mysql/my.cnf anpassen, damit MySQL nicht nur auf localhost lauscht.
univention-mysql gibts m.E. erst seit August (Univention Corporate Server 4.1 erratum 223). Bislang ist das Paket mysql-server als Abhängigkeit installiert worden.
Ich gehe derzeit davon aus, dass man durch die manuelle Installation von univention-mysql nichts zerstört. Meine Demoinstanz geht jedenfalls noch.