Wie starte
ich zwei MySQL-Dienste auf einem Computer, die zwei Datenbanken entsprechen?
Beste Antwort
26. Juli 10:36 Es gibt Situationen, in denen Sie möglicherweise mehrere Server auf demselben Computer ausführen möchten. Beispielsweise möchten Sie möglicherweise eine neue MySQL-Version testen, ohne die Einrichtung Ihres bestehenden Produktionssystems zu beeinträchtigen, oder Sie sind ein Internetdienstanbieter, der unabhängige MySQL-Installationen für verschiedene Kunden bereitstellen möchte.
Wenn Sie mehrere Server betreiben möchten, ist es am einfachsten, die Server mit unterschiedlichen TCP/IP-Ports und Socket-Dateien neu zu kompilieren, damit sie nicht denselben TCP/IP-Port oder Socket überwachen.
Angenommen, ein bestehender Server ist mit einer Standard-Portnummer und einer Socket-Datei konfiguriert, dann richten Sie den neuen Server mit einer Konfigurationsbefehlszeile wie dieser ein:
Shell> ./configure --with-tcp-port=port_number
--with-unix-socket=Dateiname
--prefix=/usr/local/mysql-3.22.9
wobei sich Portnummer und Dateiname von der Standard-Portnummer und dem Pfadnamen der Socket-Datei unterscheiden sollten und der Wert --prefix eine andere Installation als die vorhandene MySQL-Installationstabelle angeben sollte Inhalt.
Mit diesem Befehl können Sie den Socket und Port überprüfen, der von jedem aktuell ausgeführten MySQL verwendet wird:
Shell> mysqladmin -h Hostname --port=Portnummer-Variablen
Wenn auf dem von Ihnen verwendeten Port ein MySQL-Server ausgeführt wird, erhalten Sie eine Tabelle mit einige der wichtigsten konfigurierbaren Variablen von MySQL, einschließlich Socket-Namen usw.
Sie sollten auch das Init-Skript Ihres Computers (wahrscheinlich „mysql.server“) bearbeiten, um mehrere mysqld-Server zu starten und zu beenden.
Sie müssen einen neuen MySQL-Server nicht neu kompilieren, sondern starten ihn einfach mit einem anderen Port und Socket. Sie können den Port und den Socket ändern, indem Sie die von safe_mysqld beim Ausführen verwendeten Optionen angeben:
Shell> /path/to/safe_mysqld --socket=file_name --port=port_number,
wenn Sie sich auf demselben Server befinden wie ein anderer, auf dem die Protokollierung beim Ausführen aktiviert ist Wenn Sie einen neuen Server im Datenbankverzeichnis erstellen, sollten Sie auch den Namen der Protokolldatei mit den Optionen --log und --log-update von safe_mysqld angeben, andernfalls versuchen möglicherweise beide Server, in dieselbe Protokolldatei zu schreiben.
Warnung: Normalerweise sollten niemals zwei Server Daten in derselben Datenbank aktualisieren! Wenn Ihr Betriebssystem keine fehlerfreie Systemsperre unterstützt, kann dies zu überraschenden Dingen führen!
Wenn Sie ein anderes Datenbankverzeichnis für den zweiten Server verwenden möchten, können Sie die Option --datadir=path von safe_mysqld verwenden.
Gut
50 % (0) Schlecht
50 % (0)