Installationsanleitung zu MySQL
Inhalt:
- Runterladen
- Installieren
- Konfigurieren
- Starten
- Datenbank-Backup
- Datenbank-Backup einspielen
- Datenbank überprüfen
- Datenbank reparieren
- Softwareempfehlungen
Runterladen:
Nachfolgend die direkte Verknüpfung auf die Datei, sollte die Datei nicht mehr gefunden werden, dann wurde bestimmt wieder die Verzeichnisstruktur auf dem Server umgestellt oder es gibt inzwischen eine neuere Version. Dann einfach die Homepage besuchen und die gewünschte Verison suchen und runterladen. Sollte die nicht mehr vorhanden sind, dann die neuere Version runterladen (sollte in den meisten fällen funktionieren).
Das Archiv runterladen und in dem Verzeichnis
- /usr/local/src/arc
- cd /usr/local/src/
- tar -xzf arc/mysql-5.0.85.tar.gz
Installieren:
Als erstes wird eine neue Gruppe mysql und ein neuer Benutzer mysql angelegt.
- groupadd mysql
- useradd -g mysql -d /var/mysql -s /bin/false mysql
Verzeichnisse anlegen:
- mkdir /var/mysql
- mkdir /var/mysql/data
Nun wird MySQL konfiguriert und installiert:
- cd /usr/local/src/mysql-5.0.85/
- ./configure \
- --prefix=/usr/local/mysql/5.0.85 \
- --localstatedir=/var/mysql/data \
- --with-mysqld-user=mysql \
- --with-unix-socket-path=/var/mysql/mysql.sock \
- --enable-assembler \
- --with-zlib-dir=/usr/local/ \
- --with-openssl=/usr/local/openssl/current/ \
- --without-debug \
- --without-bench \
- --without-docs
- make
- make install
- ln -s /usr/local/mysql/5.0.85 /usr/local/mysql/current
Konfigurieren:
Folgende Dateien bitte in die entsprechenden Verzeichnisse kopieren:
Damit MySQL auch bei jedem Systemstart auch hochfährt, müssen
ein paar Verknüpfungen angelegt und noch die /etc/rc.config geändert werden:
- ln -s /etc/init.d/mysql.server /etc/init.d/rc2.d/S20
- ln -s /etc/init.d/mysql.server /etc/init.d/rc2.d/K20
- ln -s /etc/init.d/mysql.server /etc/init.d/rc3.d/S20
- ln -s /etc/init.d/mysql.server /etc/init.d/rc3.d/K20
Rechte vergeben:
- chown -R root.mysql /usr/local/mysql/5.0.85
- chown -R mysql.mysql /var/mysql
- chown root.root /etc/my.cnf
- chmod 600 /etc/my.cnf
- chmod 700 /etc/init.d/mysql.server
Nun wird MySQL gestartet und ein Paßwort für root vergeben, root
ist in diesem Fall nicht vom System, sondern nur für MySQL.
- ./scripts/mysql_install_db
- cd /usr/local/mysql/current/bin/
- ./safe_mysqld &
- ./mysqladmin -u root password 'geheim'
Das Paßwort geheim sollte natürlich durch ein gewünschtes ersetzt werden!!
Library-Pfade hinzufügen:
- echo "/usr/local/mysql/current/lib >> /etc/ld.so.conf
- echo "/usr/local/mysql/current/lib/mysql >> /etc/ld.so.conf
ACHTUNG: Es ist unbedingt darauf zu achten, das ">>" verwendet wird, denn ansonsten ist alles andere
aus der Datei verloren und nur noch obiger Eintrag steht drin!
Und dann noch:
- /sbin/ldconfig -v
Starten:
- /etc/init.d/mysql.server start
Um zu schauen, ob MySQL gestartet ist
- ps aux | grep mysqld
Datenbank-Backup:
Um eine Kopie einer Datenbank mit mysqlhotcopy zu machen:
- cd /usr/local/mysql/current/bin
- ./mysqlhotcopy
- -u [USER] \
- -p [PASSWD] \
- --suffix=_copy \
- --allowold \
- --keepold \
- --quiet \
- --method=cp \
- -S /var/mysql/mysql.sock \
- [DATABASE] [DEST_PATH]
Oder mit mysqldump:
- cd /usr/local/mysql/current/bin
- ./mysqldump \
- --quote-names \
- --add-locks \
- --protocol=SOCKET \
- --socket=/var/mysql/mysql.sock \
- --user=[USER] \
- --password=[PASSWD] \
- [DATABASE] >> [DEST_FILE]
- DATABASE
- Name der zu sichernde Datenbank
- DEST_PATH
- Verzeichnis in dem die Sicherung gespeichert werden soll
- DEST_FILE
- Datei in dem die Sicherung gespeichert werden soll
- USER
- Benutzername der auf die gewünschte Datenbank Zugriffsberechtigung hat
- PASSWD
- Das Paßwort zu dem Benutzer
Datenbank-Backup einspielen:
- cd /usr/local/mysql/current/bin
- ./mysql \
- --user=[USER] \
- --password=[PASSWD] \
- --host=localhost \
- [DATABASE] < /[SOURCE_SQL_FILE]
- DATABASE
- Name der Datenbank in der eingefügt werden soll
- SOURCE_SQL_FILE
- Dateiname des SQL-Dump, das zurückgespiel werden soll
- USER
- Benutzername der auf die gewünschte Datenbank Zugriffsberechtigung hat
- PASSWD
- Das Paßwort zu dem Benutzer
Datenbank überprüfen:
Um eine Datenbank auf Fehler zu untersuchen:
- cd /usr/local/mysql/current/bin
- ./myisamchk --fast --silent /var/mysql/data/*/*.MYI
Datenbank reparieren:
Um eine fehlerhafte MyISAM-Datenbank zu reparieren:
ACHTUNG: Vor der Reparatur UNBEDINGT den Server runterfahren und die Datenbank sichern!
- cd /usr/local/mysql/current/bin
- ./myisamchk --recover /var/mysql/data/*/*.MYI
Um eine fehlerhafte InnoDB-Datenbank zu reparieren:
ACHTUNG: Vor der Reparatur UNBEDINGT die Datenbank sichern! Der Server muß laufen!
- cd /usr/local/mysql/current/bin
- ./mysqlcheck -r -B -S /var/mysql/mysql.sock --default-character-set=utf8_bin --user=[USER] [DATENBANK]
Softwareempfehlungen:
Hier nun ein paar Empfehlungen zu Tools, die die Administration des Server ein wenig erleichtern sollen:
[1] phpMyAdmin
Hiermit kann man auf einfacher Weise MySQL einrichten und verwalten.
[2] MyCC
Hiermit kann man auf einfacher Weise MySQL einrichten und verwalten, wenn man Zugriff auf die Datenbank nicht nur über
localhosthat.
[3] DB-Designer 4
Um eine Datenbank zu designen.


