24.2 MySQL installieren 

24.2.1 Linux 

Die Installation unter Linux gestaltet sich wieder relativ einfach. Ein Download sollte eigentlich nicht erforderlich sein, da MySQL in der Regel jeder Linux-Distribution beiliegt. Bei der Suche nach MySQL in Ihrer Linux-Distribution wird Ihnen auffallen, dass – abhängig von der Distribution – meistens noch eine Reihe weiterer Pakete vorhanden sind. Neben dem MySQL-Server (meistens mysql–server) sollten Sie auch mysql-client und libmysql installiert haben. Wie die Pakete genau heißen, hängt teilweise auch von der Distribution ab.
Wenn alle Pakete installiert wurden, können Sie den Datenbankserver starten. Unter Ubuntu genügt hierzu beispielsweise der Befehl (bei vielen anderen Distributionen funktioniert das auch als Root und ohne sudo):
$ sudo /etc/init.d/mysql start [sudo] password for user: ****** * Starting MySQL database server mysqld [ OK ]
Stoppen können Sie den Server wiederum mit:
$ sudo /etc/init.d/mysql stop * Stopping MySQL database server mysqld [ OK ]
Bei anderen Distributionen (beispielsweise RedHat, Fedora, Mandrake) kann das Verzeichnis zum Script auch /etc/rc.d/init.d/ sein.
Bei der FreeBSD kann der MySQL Server auch mit folgendem Befehl vom Superuser gestartet bzw. gestoppt werden:
$ /usr/local/etc/rc.d/mysql-server start Starting service MySQL done $ /usr/local/etc/rc.d/mysql-server stop Shutting down service mysql done
Mit dem Befehl restart am Ende (anstatt mit start oder stop) können Sie den MySQL-Server neu starten lassen.
Windows
Die Installation unter Windows verläuft ähnlich einfach, nur dass Sie hier das Binary zunächst von http://www.mysql.de herunterladen müssen. Anschließend finden Sie einen anwenderfreundlichen Installer, mit dem Sie MySQL Klick für Klick installieren können. Sie müssen lediglich den Anweisungen auf dem Bildschirm folgen.
Damit Sie anschließend auch MySQL-Anwendungen erstellen können, müssen Sie hierbei auch die Bibliothek und Headerdateien mitinstallieren. Mit dem typischen Klick für Klick auf Next geschieht dies leider nicht automatisch, sodass Sie bei der Option, was Sie alles installieren wollen, anstatt Typical bzw. Standard hier Custom bzw. Benutzerdefiniert auswählen müssen und bei den Developer-Components die Option C Include Files / Lib Files aktivieren.
Hinweis |
Im Kapitel zuvor haben Sie vielleicht XAMPP installiert. Leider liegen XAMPP nicht die Bibliotheken und Headerdateien bei, die Sie für die Erstellung von MySQL-Anwendungen unter Windows benötigen. Daher sollten Sie sich das Binary von der Webseite http://www.mysql.de/ besorgen. |
Zunächst sollten Sie sich hier den MySQL-Server von http://www.mysql.de/ heruntergeladen, um eben die Bibliothek und Headerdateien (im lib- und include-Verzeichnis) für unsere MySQL-Anwendungen zu verwenden. Sie können jetzt natürlich jederzeit wieder das XAMPP Control Panel verwenden, um MySQL zu starten bzw. stoppen.
Alternativ können Sie aber auch, wenn Sie beispielsweise kein XAMPP verwenden wollen oder können, den MySQL-Server mit dem MySQL Server Instance Configuration Wizard einrichten und konfigurieren. Hierzu müssen Sie einfach den Anweisungen auf dem Bildschirm folgen. Hierbei kann der MySQL-Server dann auch gleich als Dienst eingerichtet werden.
Hinweis |
Da es viele unterschiedliche Möglichkeiten gibt, ist diese Anleitung für die Installation und das Starten des Datenbankservers MySQL sehr oberflächlich gehalten. Für genauere Angaben und Details empfiehlt es sich immer, zuerst das Manual zur aktuellen MySQL-Version zu lesen. Dies befindet sich meistens im docs-Verzeichnis von MySQL oder online unter http://www.mysql.de. |
24.2.2 Den Client »mysql« starten 

Der Client (oder besser die SQL-Shell) mysql ist im Standardumfang von MySQL enthalten und quasi das wichtigste Werkzeug, um mit MySQL in der Kommandozeile zu arbeiten. Die MySQL-Shell soll jetzt aufgerufen werden. Starten Sie hierfür, falls das noch nicht geschehen ist, den MySQL-Server. Da das Werkzeug mysql eine gewaltige Anzahl von Optionen besitzt, können Sie es auch mit dem Flag -help aufrufen, um sich einen Überblick zu verschaffen. Folgendermaßen können Sie den Client beispielsweise starten:
$ mysql -uroot -p -hlocalhost Enter password: ***** ... mysql >
Sie starten hierbei die MySQL-Shell mit dem User root und dem Host localhost. Sie können sich von Haus aus als Benutzer root mit dem MySQL-Server verbinden. Das sollte eigentlich auch logisch sein, denn sonst hätten Sie keinen Zugriff auf den MySQL-Server. Mit der Option -p werden Sie interaktiv nach dem Passwort gefragt.
Alternativ funktioniert dies natürlich auch bei Windows mit (beispielsweise befindet sich mysql.exe im Pfad C:\xampp\mysql\bin):
C:\xampp\mysql\bin\mysql.exe -uroot -p -hlocalhost
Für den Fall, dass Sie noch kein Passwort vergeben haben, können Sie die Option -p hier auch weglassen.
Jetzt sehen Sie den Eingabecursor:
mysql>
Wenn Sie nun quit eingeben, können Sie den Client wieder verlassen. Das Client-Programm mysql, das Sie gerade gestartet haben, wird verwendet, um SQL-Anweisungen an den Datenbankserver zu übermitteln. In der Praxis kann dafür auch das Tool phpMyAdmin verwendet werden, mit dem eine vollständige Administration der MySQL-Datenbank mithilfe des Webbrowsers möglich ist. Das Tool wird über PHP-Dokumente und das HTTP-Protokoll aufgerufen und lässt sich somit auf allen Betriebssystemen mit dem Webbrowser verwenden.
Hinweis |
Wenn Sie den mysql-Client starten, sollte der Server natürlich ebenso seine Arbeit verrichten. Das ist plausibel, aber ein häufiger Grund, warum der Client keine Verbindung zum Server aufbauen kann. |
mysqladmin
Wollen Sie ein Passwort ändern oder vergeben, können Sie dies recht komfortabel mit dem Client mysqladmin (beispielsweise mysqladmin.exe) realisieren. Beispielsweise können Sie folgendermaßen ein Passwort für den User root vergeben:
$ mysqladmin -uroot password k4p6m3o3
Hier haben Sie dem User root das Passwort k4p6m3o3 gegeben. Natürlich können Sie das Passwort so auch jederzeit wieder mit mysqladmin ändern:
$ mysqladmin -uroot -pk4p6m3o3 password Jürgen $ mysql -uroot -pk4p6m3o3 -hlocalhost ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES) $ mysql -uroot -pJürgen -hlocalhost Welcome to the MySQL monitor. Commands end with ; or \g. ...
Hiermit haben Sie das Passwort k4p6m3o3 in das Passwort Jürgen umgeändert. Sie sollten sich natürlich ein anderes Passwort einfallen lassen. Es empfiehlt sich allerdings auf Produktivsystemen nicht diesen Befehl abzusetzen. Falls es jemand schafft, Root-Rechte auf dem Server zu erlangen, kann er somit das Hauptpasswort für die DB aus der /root/.bash_history auslesen (erste Anlaufstelle für Cracker). Es ist sinnvoller, das Passwort im mysql-Monitor mit den Grant-Funktionen zu ändern oder mit einem
mysql > USE mysql; mysql > UPDATE user SET Password=PASSWORD('neues_password') > WHERE User='root';
und danach mit
mysql > FLUSH PRIVILEGES;
die User-Datenbank neu einzulesen.
Hinweis |
Natürlich gibt es auch bei MySQL mit my.cnf eine Konfigurationsdatei, in der alles mit einem Texteditor eingestellt werden kann. |
Ihre Meinung
Wie hat Ihnen das Openbook gefallen? Wir freuen uns immer über Ihre Rückmeldung. Schreiben Sie uns gerne Ihr Feedback als E-Mail an kommunikation@rheinwerk-verlag.de.