Difference between revisions of "MySQL/de"
Line 47: | Line 47: | ||
Damit wird eine neue Datenbank mit dem Namen 'name' erstellt. | Damit wird eine neue Datenbank mit dem Namen 'name' erstellt. | ||
− | {{ | + | {{Warnungsbox|Inhalt=Erteilen Sie dem Benutzer 'root' keine Rechte an Datenbanken außer vom localhost aus. Es wird dringend empfohlen, für jede Datenbank einen eigenen Benutzer zum Datenbankzugriff einzurichten!}} |
==== MySQL-Benutzer einrichten ==== | ==== MySQL-Benutzer einrichten ==== |
Revision as of 13:37, 24 April 2007
MySQL Datenbank
SME Server verwendet MySQL als Datenbank-Server. Eine ganze Reihe an Anwendungen benötigen MySQL als Datenbank, darunter auch Horde Webmail, mit dem der SME Server von Haus aus ausgestattet ist.
Nützliche links
- MySQL Homepage: http://www.mysql.com
- MySQL 4.1 Handbuch: http://dev.mysql.com/doc/refman/4.1/en/
Allgemeines
Der SME Server basiert auf CentOS und benutzt möglichst unverändert die aktuellen RPM-Pakete der jeweiligen CentOS-Version. Die aktuelle Version von MySQL ist 4.1.20.
MySQL läuft auf dem SME Server nicht unter einem Port sondern einem Socket, das vielleicht etwas gewöhnungsbedürftig ist. Aus Sicht der Entwickler erhöht das die Sicherheit, weil nur der Server selbst (localhost) Zugang zum MySQL Server benötigt. Sie können natürlich trotzdem Ihren Server so konfigurieren, dass MySQL auch aus dem Netzwerk erreichbar ist.
MySQL Root-Kennwort
Auf den ersten Blick scheint MySQL ohne Root-Kennwort zu laufen, aber das ist nicht der Fall. Falls Sie sich am SME Server als Benutzer root angemeldet haben, sorgt ein spezieller Mechanismaus dafür, dass Sie sich mit MySQL Root-Privilegien anmelden können, ohne ein Kennwort eingeben zu müssen.
Das MySQL Root-Kennwort für den SME Server wurde bei der Installation des SME Server generiert und ist 72 Zeichen lang. Template:Warnungsbox
Anmelden als MySQL root user
Um sich als MySQL root user anzumelden, geben Sie einfach 'mysql' am Linux Prompt ein, nachdem Sie sich als Benutzer 'root' am SME Server angemeldet haben.
Das MySQL Root-Kennwort zurücksetzen
Falls Sie aus Versehen das MySQL Root-Kennwort des SME Server geändert haben sollten: Mit dieser Option können Sie es auf die Voreinstellung zurücksetzen, die einen 72 Zeichen langen Ausdruck generiert:
cd /var/service/mysqld runsvctrl d . expand-template /root/.my.cnf expand-template /var/service/mysqld/set.password /usr/libexec/mysqld --bootstrap --user=mysql --skip-grant-tables < ./set.password runsvctrl u .
Zugriff auf MySQL aus dem lokalen Netzwerk
Aus Sicherheitsgründen ist MySQL in der Voreinstellung auf dem SME so konfiguriert, dass Zugriffe nur vom Server selbst und nicht vom Netzwerk aus oder aus dem Internet möglich sind. Falls Sie den Zugriff aus dem lokalen Netzwerk benötigen, führen Sie aus der SME Server shell als Benutzer 'root' folgende Befehle aus:
config setprop mysqld LocalNetworkingOnly no expand-template /etc/my.cnf /etc/rc.d/init.d/mysqld restart
Administration
Eine neue Datenbank erstellen
- Lesen Sie im Entwicklerhandbuch, wie eine neue Datenbank mit einem RPM-Paket automatisch erstellt wird oder
- Melden Sie sich als Benutzer 'root' an der SME Server shell an und geben folgende Befehle ein:
mysqladmin createdatabase 'name'
Damit wird eine neue Datenbank mit dem Namen 'name' erstellt.
MySQL-Benutzer einrichten
Überlegen Sie genau, welchen Benutzer Sie mit welchen Rechte für die neue Datenbank benötigen. Details zum MySQL-Rechtekonzept finden Sie im MySQL-Handbuch. Um einen MySQL-Benutzer einzurichten, melden Sie sich als Benutzer 'root' an der SME Server shell an und geben folgende Befehle ein:
mysql
Einen Benutzer erstellen, der Lesezugriff auf alle Tabellen der Datenbank 'test' erhält:
GRANT SELECT ON test.* TO 'user'@'host' IDENTIFIED BY 'password';