Jak uruchomić dwie instancje (izolowane procesy) serwera MySQL na jednej maszynie ?

Z Podręcznik Administratora by OPZ SGU
Wersja z dnia 17:27, 13 lis 2010 autorstwa Adminka23 (dyskusja | edycje) (Utworzył nową stronę „Cel ? Zwiększenie poziomu bezpieczeństwa poprzez fizyczną izolację baz danych (kont użytkowników), oraz ich procesów. Powyższy opis został przeznaczony dla s...”)
(różn.) ← poprzednia wersja | przejdź do aktualnej wersji (różn.) | następna wersja → (różn.)
Przejdź do nawigacji Przejdź do wyszukiwania

Cel ?

Zwiększenie poziomu bezpieczeństwa poprzez fizyczną izolację baz danych (kont użytkowników), oraz ich procesów.

Powyższy opis został przeznaczony dla systemu Debian Lenny, w innych systemach ścieżki mogą się trochę różnić.


1) Tworzymy folder w którym przechowywane będą fizycznie bazy danych drugiego procesu mysql.

mkdir /var/lib/mysql_backup

2) Przejmujemy uprawnienia do utworzonego katalogu dla użytkownika mysql (jeżeli o tym zapomnimy, mysql nie będzie w stanie zapisać "domyślnej" bazy danych, i skończy się na głupich błędach.

chown mysql.mysql /var/lib/mysql_backup/

3) Kopiujemy plik my.cnf

cp /etc/my.cnf /etc/my_backup.cnf

4)edytujemy plik /etc/my_backup.cnf

i zmieniamy następujące wartości na swoje:

pid-file
socket
port
datadir
log

w moim wypadku będzie to:

[mysqld]
pid-file = /var/lib/mysql_backup/mysql_backup.pid
socket = /var/lib/mysql_backup/mysql_backup.sock
port = 3300
datadir = /var/lib/mysql_backup
log = /var/log/mysql_backup.log

5) Tworzymy domyślne struktury bazy danych

/usr/local/mysql/bin/mysql_install_db --user=mysql --datadir=/var/lib/mysql_backup/ --basedir=/usr/local/mysql/

6) Uruchamiamy

/usr/local/mysql/bin/mysqld_safe --defaults-file=/etc/my_backup.cnf