Использование phpmyadmin для нескольких MySql серверов на Ubuntu и Debian
Как системный администратор, мы склонны управлять несколькими базами данных или например MySQL Server. Так что мы должны найти лучший способ управления MySQL Server-ом в гораздо более легкой форме и централизованно. В моем окружении, у меня есть 5 различных серверов баз данных MySQL, работающих отдельно при различной локализации сервера.
PHPMyAdmin способен сделать это, с некоторыми изменениями на файлах конфигурации. Вам просто нужно, позволить пользователю MySQL и хосту в каждом сервере баз данных для подключения нему.
Установка, что я собираюсь сделать, будет, как показано ниже:
Чтобы симметрично установить PHPMyAdmin на Ubuntu или Debian, необходимо 3 основных пакета Apache, MySQL и PHP должен быть установлен и настроен соответствующим образом.
1. Установка и настройка Apache2
2. установка Mysql
3. установка PHP
Я предполагаю, что вы уже установили все перечисленное в верху на вашем сервере.
После установки apache2, MySQL и PHP, можно переходить к шагам что ниже, чтобы установить и настроить PHPMyAdmin
Установка phpmyadmin для нескольких MySql серверов на Ubuntu и Debian
У нас есть такие вот данные которые нам необходимы в данной теме:
IP Веб Сервера: 192.168.1.15
Каталог PHPMyAdmin лежит: /etc/phpmyadmin
Пользователь: phpma_root
Пароль: phpma_root
Установка PHPMyAdmin
Мы собираемся будет установить PHPMyAdmin на svr1.my_webserver, и этот сервер будет управлять нашими серверами MySQL:
# apt-get install phpmyadmin
Создание root пользователя для управления PHPMyAdmin
Этот шаг является необязательным, конечно мы можем использовать root для входа на PHPMyAdmin.
mysql> CREATE USER 'phpma_root'@'%' IDENTIFIED BY 'phpma_root'; mysql> GRANT ALL PRIVILEGES ON *.* TO phpma_root@'%';
Изменить my.cnf из MySQL-серверов
Убедитесь, что все серверы баз данных, слушая все IP, которые доступен извне. Для упрощения этого, просто удалите или разкомментаруйте, если вы найдете следующие строки в вашем файле my.cnf (как правило, расположены в /etc):
#bind-address=127.0.0.1 #bind-address=localhost
Сделать доступным MySql
Чтобы дифференцировать наши серверы MySQL легко, для этого лучше мы добавим имя хоста данных всех серверов Web Server/PHPmyAdmin server /etc/hosts в файл. Исходя из моих требований выше, я добавлю следующую строку в веб-сервера /etc/hosts:
# ee /etc/hosts
1
27.0.0.1 localhost 127.0.1.1 i-svr.dev i-svr svr2.mysql 192.168.1.90 svr3.mysql 192.168.1.91 svr4.mysql 192.168.1.92 svr5.mysql 192.168.1.93 svr6.mysql 192.168.1.94
Изменить конфигурационный файл PHPMyAdmin
Нам нужно создать конфигурационные файлы PHPMyAdmin и включить все базы данных сервера, как описано выше. Скопируйте пример конфигурации, как показано ниже в файл активной конфигурации:
# cp /etc/phpmyadmin/config.inc.php /etc/phpmyadmin/config.inc.php.bak
Найти и раскомментировать строку ниже:
//$cfg['Servers'][$i]['AllowNoPassword'] = TRUE; //после будет выглядеть так: $cfg['Servers'][$i]['AllowNoPassword'] = TRUE;
В этом файле вы также увидите следующие строки:
/ * Тип аутентификации * / //$cfg['Servers'][$i]['auth_type'] = 'cookie'; /* Server parameters */ //$cfg['Servers'][$i]['host'] = 'localhost'; //$cfg['Servers'][$i]['connect_type'] = 'tcp'; //$cfg['Servers'][$i]['compress'] = false; /* Select mysqli if your server has it */ //$cfg['Servers'][$i]['extension'] = 'mysql';
Привести к виду как показано ниже:
/* Тип аутентификации * / $cfg['Servers'][$i]['auth_type'] = 'cookie'; /* Параметры сервера */ $cfg['Servers'][$i]['host'] = 'svr2.mysql'; $cfg['Servers'][$i]['connect_type'] = 'tcp'; $cfg['Servers'][$i]['compress'] = false; /* Select mysqli if your server has it */ $cfg['Servers'][$i]['extension'] = 'mysql'; $cfg['Servers'][$i]['AllowNoPassword'] = false; /* * 2-й сервер */ $i++; /* Тип аутентификации * / $cfg['Servers'][$i]['auth_type'] = 'cookie'; /* Параметры сервера*/ $cfg['Servers'][$i]['host'] = 'svr3.mysql'; $cfg['Servers'][$i]['connect_type'] = 'tcp'; $cfg['Servers'][$i]['compress'] = false; /* Select mysqli if your server has it */ $cfg['Servers'][$i]['extension'] = 'mysql'; $cfg['Servers'][$i]['AllowNoPassword'] = false; /* * 3-й сервер */ $i++; /* Тип аутентификации * / $cfg['Servers'][$i]['auth_type'] = 'cookie'; /* Параметры сервера */ $cfg['Servers'][$i]['host'] = 'svr4.mysql'; $cfg['Servers'][$i]['connect_type'] = 'tcp'; $cfg['Servers'][$i]['compress'] = false; /* Select mysqli if your server has it */ $cfg['Servers'][$i]['extension'] = 'mysql'; $cfg['Servers'][$i]['AllowNoPassword'] = false; /* * 4-й сервер */ $i++; /* Тип аутентификации * / $cfg['Servers'][$i]['auth_type'] = 'cookie'; /* Параметры сервера */ $cfg['Servers'][$i]['host'] = 'svr5.mysql'; $cfg['Servers'][$i]['connect_type'] = 'tcp'; $cfg['Servers'][$i]['compress'] = false; /* Select mysqli if your server has it */ $cfg['Servers'][$i]['extension'] = 'mysql'; $cfg['Servers'][$i]['AllowNoPassword'] = false; /* * 5-й сервер */ $i++; /* Тип аутентификации * / $cfg['Servers'][$i]['auth_type'] = 'cookie'; /* Параметры сервера */ $cfg['Servers'][$i]['host'] = 'svr6.mysql'; $cfg['Servers'][$i]['connect_type'] = 'tcp'; $cfg['Servers'][$i]['compress'] = false; /* Select mysqli if your server has it */ $cfg['Servers'][$i]['extension'] = 'mysql'; $cfg['Servers'][$i]['AllowNoPassword'] = false;
Теперь вы можете открыть PhpMyAdmin через веб-браузер на http://192.168.1.15/phpmyadmin. Вы можете выбрать серверы MySQL, к которым вы хотите подключиться и получить доступ к нему с помощью phpmaroot пользователя, созданного выше.