Для работы с базами данных через веб интерфейс существует веб редактор phpMyAdmin. Данный инструмент подключается к базе данных MariaDB и отображает существующие базы данных, позволяет создавать новые, редактировать данные в таблицах. В целом все тоже самое, что можно сделать в консоли mysql, но гораздо удобней и наглядней, особенно при частых работах с данными. Рассмотрим установку phpMyAdmin на Сервер Linux Debian 12 с предварительно настроенным Nginx + MariaDB + PHP (LEMP).
Все настройки мы производим от пользователя root, если вы используете обычного пользователя, перед командой добавляйте sudo.
1. Установим необходимые компоненты и сам редактор баз данных
apt install php-mbstring
apt install phpmyadmin
В процессе установки пользователю будет предложено выбрать для какого веб сервера необходимо настроить редактор
- []apache2
- []lighttpd
В нашем случае сервер с предустановленным LEMP и мы оставляем оба поля пустыми и нажимаем ОК.
Далее будет предложено создать базу данных для самого редактора баз данных, где будут храниться пользовательские настройки редактора и другие данные, необходимые для его работы. Тут выбираем вариант Да и в следующем окне будет предложено придумать пароль для пользователя phpmyadmin. Вводим пароль и подтверждаем его в следующем окне, чтобы избежать ошибок ввода.
2. Основные настройки
Иногда для удобства требуется работать сразу с несколькими базами данных, чтобы их отобразить под одним пользователем нам нужно создать такого и делегировать права пользователя root.
mysql -u root -p
CREATE USER 'alldbuser'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON . TO 'alldbuser'@'localhost';
FLUSH PRIVILEGES;
Теперь при авторизации под пользователем alldbuser отображаются все базы данных созданные на данном сервере.
Если нужно установить пароль для пользователя root, воспользуйтесь приведенными командами:
mysql -u root
use mysql;
FLUSH PRIVILEGES;
ALTER USER 'root'@'localhost' IDENTIFIED BY 'YOURNEWPASSWORD';
FLUSH PRIVILEGES;
exit
Добавим ссылку на папку phpMyAdmin в корневой каталог веб сервера nginx:
ln -s /usr/share/phpmyadmin /usr/share/nginx/html
3. Настройка безопасности
Для того чтобы обезопасить редактор баз данных, от подбора паролей, потенциальных уязвимостей, добавим авторизацию на уровне без сервера.
vi /etc/nginx/conf.d/default.conf
location /phpmyadmin {
auth_basic "Admin Login";
auth_basic_user_file /etc/nginx/pma_pass;
}
Добавим пользователя и укажем для него пароль:
htpasswd -c /etc/nginx/pma_pass pma_username
Перезапустим службу nginx:
systemctl restart nginx
Теперь при переходе по ссылке http://server-ip/phpmyadmin появится окно для ввода логина и пароля. В нашем случае логином будет pma_username.
Настройка завершена, мы настоятельно рекомендуем вводить пароли только используя https протокол с SSL сертификатом, во избежание перехвата данных.