MySQL

From Gentoo Wiki
Jump to:navigation Jump to:search
This page is a translated version of the page MySQL and the translation is 100% complete.

MySQL ist ein populäres relationales Datenbank Management System und Freie Software. Es wird oft in Verbindung mit Web-Applikationen (so wie viele PHP Seiten) verwendet, hat aber viele weitere Funktionen auf Unternehmensebene seit seinem Start im Jahr 1994 hinzubekommen. Eine alternative Abspaltung ist MariaDB.

Installation

USE-Flags

Vor der Installation von dev-db/mysql sollten Sie sorgsam die USE-Flags prüfen, die die Paket-Verwendung und Funktionen beeinflussen. Die folgende Tabelle gibt einen Überblick zu den vom Paket unterstützten USE-Flags:

USE flags for dev-db/mysql Fast, multi-threaded, multi-user SQL database server

+perl Add optional support/bindings for the Perl language
+server Build the server program
cjk Add CJK support for InnoDB fulltext search using app-text/mecab
cracklib Support for cracklib strong password checking
debug Enable extra debug codepaths, like asserts and extra output. If you want to get meaningful backtraces see https://wiki.gentoo.org/wiki/Project:Quality_Assurance/Backtraces
jemalloc Use dev-libs/jemalloc for memory management
latin1 Use LATIN1 encoding instead of UTF8
numa Enable NUMA support using sys-process/numactl (NUMA kernel support is also required)
profiling Add support for statement profiling (requires USE=community).
router Build the MySQL router program
selinux !!internal use only!! Security Enhanced Linux support, this must be set by the selinux profile or breakage will occur
tcmalloc Use the dev-util/google-perftools libraries to replace the malloc() implementation with a possibly faster one
test Install upstream testsuites for end use.
test-install Install testsuite for manual execution by the user
verify-sig Verify upstream signatures on distfiles
Data provided by the Gentoo Package Database · Last update: 2026年06月19日 06:05 More information about USE flags

Emerge

Sobald die richtigen USE-Flags gesetzt sind, installieren Sie MySQL:

root #emerge --ask dev-db/mysql

Konfiguration

Dienste

OpenRC

Um die Datenbank(en) automatisch beim Booten zu starten, fügen Sie das Init-Skript zum Standard-Runlevel hinzu:

root #rc-update add mysql default

Nach der Konfiguration der Datenbank, die später in diesem Dokument beschrieben wird, starten Sie den mysql Dienst:

root #rc-service mysql start

Vorbereitende Konfiguration

Das Paket dev-db/mysql erledigt die vorbereitende Konfiguration von MySQL durch die Option --config:

root #emerge --config dev-db/mysql

Dies erstellt eine Datenbank, setzt die passenden Zugriffsberechtigungen dafür und unterstützt bei der Erzeugung eines guten root-Passwortes. (Dies geschieht für das MySQL root-Konto, welches nicht in Beziehung zum Linux root-Konto steht.)

Um anonyme Benutzer zu säubern und Datenbanken von der Installation zu testen, starten Sie nach dem vorbereitenden Einrichten mysql_secure_installation:

root #mysql_secure_installation

Datenbankeigene Konfiguration

Wenn die Datenbank in Gang ist, verbinden Sie sich mit ihr über die mysql Client-Anwendung.

user $mysql -u root -p -h localhost
Enter root password: 
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 1 to server version: 5.5.1
 
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
 
mysql>

Von diesem Punkt an ist eine Sitzung mit der MySQL-Instanz geöffnet, die es erlaubt Anfragen und administrative Befehle zu bedienen.

Befehlshistorie löschen

Standardmässig loggt MySQL jede Aktion, das Zurücklassen von Klartext-Passworten in seiner Historiendatei eingeschlossen.

Um die Historiendatei zu entfernen:

root #rm /root/.mysql_history

Alternativ können Sie das History-Logging hiermit permanent deaktivieren:

root #ln -sf /dev/null /root/.mysql_history

Siehe auch