Запуск нескольких серверов MySQL на одной машине - PullRequest
10 голосов
/ 04 апреля 2009

Можем ли мы запустить несколько серверов MySQL на одном компьютере?

Спасибо.

Ответы [ 2 ]

17 голосов
/ 04 апреля 2009

Да, вам просто нужно запустить их на отдельных портах и ​​указать их в разных каталогах lib для своих данных.

Вот хороший справочник: http://dev.mysql.com/doc/refman/5.1/en/mutiple-servers.html

(Если вы хотите использовать это для тестирования, я предлагаю проверить MySQL Sandbox , который теперь заменен на dbdeployer )

4 голосов
/ 18 сентября 2017

Существуют различные способы запуска нескольких экземпляров mysql (на разных портах) на одном компьютере. Здесь я использовал тот же двоичный файл и использовал отдельный файл конфигурации (с отдельным портом, pid, сокетом и каталогом данных). Нам нужно создать новые каталоги для нашего каталога datadir и log (если он используется). Также нам нужно назначить соответствующие разрешения для этих папок:

# mkdir /var/lib/mysql2
  # chown -R mysql.mysql /var/lib/mysql2/
  # mkdir /var/log/mysql2
  # chown -R mysql.mysql /var/log/mysql2

Далее нам нужен отдельный файл конфигурации, такой же, как файл конфигурации mysql по умолчанию. Итак, начните с копирования существующего и изменения необходимых значений.

 # cp /etc/my.cnf /etc/my2.cnf

(или измените путь, соответствующий вашему файлу конфигурации, в другом месте).

Далее нам нужно отредактировать наш новый файл конфигурации с другим портом mysql (по умолчанию 3306), pid и сокет, чем по умолчанию, а также указать папки с данными и журналом на те, которые были созданы ранее.

# cd /etc
  # sed -i ‘s/3306/3307/g’ my2.cnf
  # sed -i ‘s/mysqld.sock/mysqld2.sock/g’ my2.cnf
  # sed -i ‘s/mysqld.pid/mysqld2.pid/g’ my2.cnf
  # sed -i ‘s/var\/lib\/mysql/var\/lib\/mysql2/g’ my2.cnf
  # sed -i ‘s/var\/log\/mysql/var\/log\/mysql2/g’ my2.cnf

Наконец, нам нужно инициализировать базу данных по умолчанию:

# mysql_install_db –user=mysql –datadir=/var/lib/mysql2/

Наконец, мы можем запустить наш новый экземпляр mysql с:

# mysqld_safe – -defaults-file=/etc/my2.cnf &

Мы можем подключиться к нашему новому экземпляру, используя:

# mysql -S /var/run/mysqld/mysqld2.sock

или

# mysql -h 127.0.0.1 -P 3307

и если он нам больше не нужен, остановите его с помощью:

# mysqladmin -S /var/run/mysqld/mysqld2.sock shutdown

Ref Site: https://linuxinpakistan.com/start-multiple-instances-mysql-machine

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...