Как установить phpMyAdmin с Nginx в Ubuntu 18.04

phpMyAdmin — это инструмент на основе PHP с открытым исходным кодом для управления серверами MySQL и MariaDB через веб-интерфейс.

phpMyAdmin позволяет взаимодействовать с базами данных MySQL, управлять учетными записями и привилегиями пользователей, выполнять SQL-операторы, импортировать и экспортировать данные в различных форматах данных и многое другое.

В этом руководстве описывается, как установить phpMyAdmin с Nginx в Ubuntu 18.04.

Подготовка

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

Хотя это и не обязательно, настоятельно рекомендуется получить доступ к вашему экземпляру phpMyAdmin через HTTPS. Если на ваших сайтах не включен SSL, ознакомьтесь с нашей статьей о том, как защитить свой Nginx с помощью Let's Encrypt в Ubuntu 18.04 .

Установка phpMyAdmin в Ubuntu

Установить phpMyAdmin — довольно простая задача. Начните с обновления списка пакетов:

sudo apt update

Затем выполните следующую команду, чтобы установить пакет phpMyAdmin из репозиториев Ubuntu по умолчанию:

sudo apt install phpmyadmin
Перед установкой phpMyAdmin убедитесь, что в вашей системе установлены Nginx и PHP FPM.

Установщик попросит вас выбрать веб-сервер, который должен быть автоматически настроен для запуска phpMyAdmin. Нет возможности выбрать Nginx, нажмите TAB чтобы выбрать OK а затем Enter . Мы настроим Nginx в следующем разделе.

Затем установщик спросит вас, хотите ли вы использовать инструмент dbconfig-common для настройки базы данных. Выберите Yes и нажмите Enter .

Введите пароль для регистрации phpMyAdmin в базе данных, выберите OK и нажмите Enter .

Вам будет предложено подтвердить пароль, ввести тот же пароль, выбрать OK и нажать Enter .

На этом этапе phpMyAdmin установлен на вашем сервере Ubuntu.

Создайте администратора MySQL

В системах Ubuntu под управлением MySQL 5.7 (и более поздних версий) пользователь root по умолчанию настроен на использование auth_socket аутентификации auth_socket .

Плагин auth_socket аутентифицирует пользователей, которые подключаются с локального хоста через файл сокета Unix. Это означает, что вы не можете пройти аутентификацию как root, указав пароль.

Вместо изменения метода аутентификации для корневого пользователя MySQL мы создадим нового административного пользователя MySQL. Этот пользователь будет иметь те же привилегии, что и пользователь root, и будет настроен на использование mysql_native_password аутентификации mysql_native_password .

Мы будем использовать этого пользователя для входа в панель управления phpMyAdmin и выполнения административных задач на нашем сервере MySQL.

Начните с входа на сервер MySQL в качестве пользователя root:

sudo mysql

Из оболочки MySQL выполните следующие команды, которые создадут нового пользователя-администратора и предоставят соответствующие разрешения:

CREATE USER 'padmin'@'localhost' IDENTIFIED BY 'change-with-your-secure-password';GRANT ALL PRIVILEGES ON *.* TO 'padmin'@'localhost' WITH GRANT OPTION;

В этом примере мы назвали администратора padmin . Вы можете использовать любое имя, только не забудьте установить надежный пароль.

Настройка Nginx и phpMyAdmin

Есть несколько способов настроить Nginx для обслуживания файлов phpMyAdmin. Если серверный блок вашего домена уже настроен для обслуживания запросов PHP, вы можете просто создать символическую ссылку из установочных файлов phpMyAdmin в корневой каталог документов вашего домена.

В этом руководстве мы создадим фрагмент, который можно будет включить в любой из файлов блоков нашего сервера Nginx.

Откройте текстовый редактор и создайте следующий файл:

sudo nano /etc/nginx/snippets/phpmyadmin.conf

Вставьте следующий контент:

/etc/nginx/snippets/phpmyadmin.conf
location /phpmyadmin {
    root /usr/share/;
    index index.php index.html index.htm;
    location ~ ^/phpmyadmin/(.+.php)$ {
        try_files $uri =404;
        root /usr/share/;
        fastcgi_pass unix:/run/php/php7.2-fpm.sock;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include /etc/nginx/fastcgi_params;
    }

    location ~* ^/phpmyadmin/(.+.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ {
        root /usr/share/;
    }
}
Убедитесь, что вы используете правильный путь к сокету или адрес / порт для директивы fastcgi_pass .

Сохраните файл и закройте редактор.

Теперь вы можете добавить следующую строку в каждый блок сервера домена, где вы хотите получить доступ к phpMyAdmin, используя: domain.com/phpmyadmin

include snippets/phpmyadmin.conf;

Вот пример:

/etc/nginx/conf.d/domain.com.conf
server {

    # . . . other code

    include snippets/phpmyadmin.conf;

    # . . . other code 

}

Доступ к phpMyAdmin

Чтобы получить доступ к интерфейсу phpMyAdmin, откройте свой любимый браузер и введите доменное имя вашего сервера или общедоступный IP-адрес, а затем /phpmyadmin :

http(s)://your_domain_or_ip_address/phpmyadmin

Введите учетные данные для входа в систему с правами администратора и нажмите Go .

После входа в систему вы увидите панель управления phpMyAdmin, которая будет выглядеть примерно так:

Выводы

Поздравляем, вы успешно установили phpMyAdmin на свой сервер Ubuntu 18.04. Теперь вы можете начать создавать базы данных MySQL, пользователей и таблицы, а также выполнять различные запросы и операции MySQL.

Если у вас есть вопросы, не стесняйтесь оставлять комментарии ниже.

Оставьте комментарий