In diesem Handbuch führen wir mehrere Mysql-Datenbanken auf einem einzigen physischen Server mit der installierten Version von Mysql-5.5 aus. Das Ausführen mehrerer Mysql-Server auf einem einzelnen Server kann erforderlich sein, um die Replikation auf einem einzigen Server auszuführen oder jemandem (Programmierer, Freund, Client) Zugriff auf eine separate saubere Mysql-Datenbank zu gewähren. Die Datenbank ist auf dem Debian GNU/Linux-Betriebssystem konfiguriert.
Wir müssen ein neues Verzeichnis für Daten- und Dateiprotokolle erstellen. Sie müssen diesen Ordnern auch die richtigen Rechte zuweisen:
mkdir /var/lib/mysql2 chown -R mysql:mysql /var/lib/mysql2/ mkdir /var/log/mysql2 chown -R mysql:mysql /var/log/mysql2
Wir müssen eine neue Konfigurationsdatei erstellen. Wir können eine bestehende Konfiguration kopieren und die notwendigen Werte ändern. In meiner Debian-Distribution befindet sich die Konfigurationsdatei in /etc/mysql/my.cnf:
cp -R /etc/mysql/ /etc/mysql2
Als nächstes müssen wir die Konfigurationsdatei bearbeiten und Änderungen an mindestens den Parametern vornehmen. mysql port (Standard 3306) pid und socket, sowie Verzeichnisse von Daten und Protokollen:
sed -i 's/3306/3307/g' /etc/mysql2/my.cnf sed -i 's/mysqld.sock/mysqld2.sock/g' /etc/mysql2/my.cnf sed -i 's/mysqld.pid/mysqld2.pid/g' /etc/mysql2/my.cnf sed -i 's/var\/lib\/mysql/var\/lib\/mysql2/g' /etc/mysql2/my.cnf sed -i 's/var\/log\/mysql/var\/log\/mysql2/g' /etc/mysql2/my.cnf
Initialisieren Sie eine saubere Datenbank:
mysql_install_db --user=mysql --datadir=/var/lib/mysql2/
Starten Sie eine neue Kopie von mysql Server:
mysqld_safe --defaults-file=/etc/mysql2/my.cnf &
Sie können eine Verbindung mit ihm über Befehle:
mysql -S /var/run/mysqld/mysqld2.sock
oder:
mysql -h 127.0.0.1 -P 3307
Wenn die Arbeit dieser Basis nicht mehr benötigt wird, stoppen Sie sie, indem Sie den Befehl ausführen:
mysqladmin -S /var/run/mysqld/mysqld2.sock shutdown
Verwenden Sie "127.0.0.1" anstelle von "localhost". Andernfalls wird anstelle der Verbindung zum gewünschten Port standardmäßig ein Socket verwendet. Dies ist nicht der gleiche Server, den wir erstellt haben.
Erstellen Sie ein Passwort. root Für die zweite Version der mysql-Datenbank führen wir einen Befehl aus, indem wir pass_mysql durch Ihr Datenbankpasswort ersetzen:
mysqladmin --host=127.0.0.1 --port=3307 -u root password 'pass_mysql'
Verbinden Sie sich mit der Datenbank über das Root-Passwort:
mysql -h 127.0.0.1 -P 3307 -u root -ppass_mysqlSo ändern Sie das Passwort des Root-Benutzers der mysql-Datenbank, indem Sie einen Befehl in der Datenbankkonsole ausführen:
update user set password=PASSWORD("new_pass") where User='root';Fügen Sie nun den Start und Stopp der zweiten Version von mysql hinzu, dazu müssen Sie in die Startdatei mysql eingeben:
vi /etc/init.d/mysql
war:
...
# Start MySQL!
/usr/bin/mysqld_safe > /dev/null 2>&1 &
...wurde:
...
# Start MySQL-1!
/usr/bin/mysqld_safe > /dev/null 2>&1 &
# Start MySQL-2!
/usr/bin/mysqld_safe --defaults-file=/etc/mysql2/my.cnf > /dev/null 2>&1 &
...war:
'stop')
# * As a passwordless mysqladmin (e.g. via ~/.my.cnf) must be possible
# at least for cron, we can rely on it here, too. (although we have
# to specify it explicit as e.g. sudo environments points to the normal
# users home and not /root)
log_daemon_msg "Stopping MySQL database server" "mysqld"
if ! mysqld_status check_dead nowarn; then
set +e
shutdown_out=`$MYADMIN shutdown 2>&1`; r=$?wurde:
'stop')
# * As a passwordless mysqladmin (e.g. via ~/.my.cnf) must be possible
# at least for cron, we can rely on it here, too. (although we have
# to specify it explicit as e.g. sudo environments points to the normal
# users home and not /root)
log_daemon_msg "Stopping MySQL database server" "mysqld"
if ! mysqld_status check_dead nowarn; then
set +e
# Shutdown MySQL-1!
shutdown_out=`$MYADMIN shutdown 2>&1`; r=$?
# Shutdown MySQL-2
mysqladmin -S /var/run/mysqld/mysqld2.sock shutdown -ppass_mysql_root > /dev/null 2>&1
Zum Überprüfen überladen Sie die mysql-Datenbank, indem Sie den Befehl ausführen:
/etc/init.d/mysql restart
Verbinden Sie sich mit dem zweiten Server, indem Sie den Befehl ausführen:
mysql -h 127.0.0.1 -P 3307 -u root -ppass_mysql
Der zweite Mysql-Datenbankserver wurde gestartet und konfiguriert, sodass Sie die Anzahl der Server ausführen können, die Ihr physischer Server verarbeiten kann.
Lassen Sie uns eine kurze Pause machen und ein Video ansehen, wie Sie im tiefen Schnee Feuer machen können, wenn nicht, wenn Sie solches Wissen benötigen:



Kommentar