Главная >> Инструкции >> Установка PhpMyAdmin в Ubuntu 20.04

Установка PhpMyAdmin в Ubuntu 20.04

PhpMyAdmin - это веб-приложение с открытым исходным кодом, написанное на языке программирования PHP и представляющее собой веб-интерфейс для администрирования СУБД MySQL. Главной особенностью данного приложения является возможность управления MySQL без непосредственного ввода SQL команд. Приложение позволяет создавать и редактировать таблицы, вносить в них данные, администрировать пользователей баз данных, а также экспортировать и импортировать записи и структуру таблиц из базы данных.

В этой статье мы рассмотрим, как выполняется установка phpMyAdmin на Ubuntu 20.04 с веб-сервером Apache. Прежде чем приступать к установке phpMyAdmin, у вас уже заранее должны быть установлены такие компоненты, как Apache, MySQL и PHP. Если ещё нет, то сначала посмотрите статью установка LAMP Ubuntu 20.04.


Содержание статьи

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

Прежде чем мы сможем установить phpMyAdmin Ubuntu, необходимо убедиться, что у вас установлено расширение php для работы с текстовыми строками в формате юникода. Для его установки выполните в терминале команду:

sudo apt -y install php-mbstring

z+NrQYe4ptDIgAAAABJRU5ErkJggg==

Теперь можно установить сам пакет phpMyAdmin при помощи команды:

sudo apt -y install phpmyadmin

Установщик спросит вас, какой веб-сервер будет использоваться для работы программы. Отметьте с помощью кнопки Пробел пункт apache2, а затем с помощью Tab и Enter нажмите кнопку Ок:

JTpaNIDmH0RvoIoBU0hQNhK1kNLrWXQ1D9cbhJiiLI+hKaDzkRRU+f8AOiMIsrwsgBsAAAAASUVORK5CYII=

Далее установщик предложит создать базу данных для phpMyAdmin, в которой будет находиться служебная информация программы и необходимые настройки, необходимо согласиться выбрав пункт Yes:

rUgBUIyvT58OvHOrTpKOWgBLyOd53zsGs+6cp1Xyo6TOfLZBdL2AwmF22q6QKbSVgFUDUJoSN6P8DNxSj9ZLG9msAAAAASUVORK5CYII=

На следующем этапе необходимо придумать пароль для пользователя phpmyadmin, который будет использоваться программой для доступа к собственной базе данных:

z+cNFRMeTW77QAAAABJRU5ErkJggg==

Далее программа попросит вас повторить заданный ранее пароль:

btJqQiXHo3FnCjOfSv9fI6HG7DHTYOgAAAAASUVORK5CYII=

После этого установка phpMyAdmin Ubuntu 20.04 завершена.

Настройка phpMyAdmin в Ubuntu

Теперь phpMyAdmin будет доступен по адресу ip_вашего_сервера/phpmyadmin. Вы можете проверить, всё ли работает, просто открыв этот адрес в браузере:

BwSMilWXAymOAAAAAElFTkSuQmCC

1. Создание пользователя для phpMyAdmin

По умолчанию, вы не сможете авторизоваться в phpMyAdmin от пользователя root, потому что по умолчанию данная особенность отключена. В целях безопасности включать данную опцию не рекомендуется. В данном случае необходимо создать нового пользователя и наделить его полномочиями root. Для создания нового пользователя перейдите в консоль MySQL введя команду в терминале:

sudo mysql -u root -p

После ввода пароля root пользователя MySQL, введите следующие команды:

CREATE USER 'test'@'localhost' IDENTIFIED BY 'пароль';

GRANT ALL PRIVILEGES ON *.* TO 'test'@'localhost';

FLUSH PRIVILEGES;

При помощи первых двух команд был создан новый пользователь с именем test, ему был присвоен пароль и предоставлены все возможные привилегии (такие как создание, удаление, редактирование баз данных, таблиц и т.д.). Третья команда обновляет заданные ранее привилегии.

69I1UrJbwAAAAASUVORK5CYII=

Теперь необходимо авторизоваться в phpMyAdmin при помощи созданного пользователя:

AeTH1WMtAt4KAAAAAElFTkSuQmCC

2. Защита phpMyAdmin

Если phpMyAdmin установлен на производственном сервере, который доступен из сети, то его необходимо обезопасить, добавив авторизацию. Для этого создайте файл /usr/share/phpmyadmin/.htaccess со следующим содержимым:

sudo vi /usr/share/phpmyadmin/.htaccess

AuthType Basic
AuthName "Restricted Files"
AuthUserFile /etc/phpmyadmin/.htpasswd
Require valid-user

w8rBJvZ0JSmrgAAAABJRU5ErkJggg==

Данные строки означают:

  • AuthType Basic - устанавливает тип аутентификации, мы указываем, что будем использовать пароль;
  • AuthName - задает сообщение, которое будет видеть пользователь;
  • AuthUserFile - файл, откуда программа будет брать имена пользователей и пароли;
  • Require - указываем, что аутентификация обязательна.

Далее создайте новый пароль для своего пользователя:

sudo htpasswd -c /etc/phpmyadmin/.htpasswd пользователь

xhWr3wCeVGU1OjxNirMZs4Jq77+vVnH5TxlldVq5T7jdUo7tOHBSD27Z33mp8jwVM1VvPYoAjEmE9XfGkYrZcVuDv8bxI9MxhyABaXAAAAAElFTkSuQmCC

Чтобы настройки из файла .htaccess заработали в этой директории, необходимо, чтобы для неё в файле /etc/apache2/apache2.conf значение AllowOverride было All:

sudo vi /etc/apache2/apache2.conf

<Directory /usr/share>
AllowOverride All
Require all granted
</Directory>

8H5dJQPjcjAcIAAAAASUVORK5CYII=

Сохраните изменения и закройте файл. Далее перезапустите apache:

sudo systemctl restart apache2

Теперь, если вы попытаетесь открыть phpMyAdmin, то вам необходимо пройти авторизацию:

z8o6cDySbc25QAAAABJRU5ErkJggg==

Как удалить phpMyAdmin с Ubuntu

Чтобы удалить phpMyAdmin, необходимо выполнить команду:

sudo apt purge phpmyadmin

После выполнения этой команды программа будет удалена с вашего компьютера.

Выводы

В этой небольшой статье мы рассмотрели, как установить PhpMyAdmin на Ubuntu 20.04. Как видите, всё стало намного проще, чем в предыдущих версиях, когда нам нужно было вручную включать различные модули и настраивать местоположение файлов программы.

Creative Commons License
Статья распространяется под лицензией Creative Commons ShareAlike 4.0 при копировании материала ссылка на источник обязательна .

16 комментариев к “Установка PhpMyAdmin в Ubuntu 20.04”

  1. Вы забыли рассказать, как ограничить доступ к phpmyadmin из-вне: доступ к его директориям, доступ по IP...на losst.pro, кстати, по IP не закрыто - с моего динамического IP открывается ввод пользователя и пароля, что не есть хорошо...

    Ответить
  2. Что-то непонятное творится, все сделал правильно, но при обращении http://ubuntu/phpmyadmin получаю 502 Bad Gateway.
    Установил PHP 7.4:
    sudo apt install php7.4 php7.4-common php7.4-cli php7.4-fpm php7.4-gd php7.4-mysql php7.4-mbstring php7.4-curl php7.4-xml php7.4-zip php7.4-json php7.4-imagick php7.4-xmlrpc php7.4-bz2 php7.4-dev php7.4-opcache

    Назначил по дефолту:
    sudo update-alternatives --set php /usr/bin/php7.4

    Запустил:
    sudo service php7.4-fpm start

    Подправил потом еще:
    sudo nano /etc/php/7.4/fpm/pool.d/www.conf
    была закомментена listen = /run/php/php7.4-fpm.sock

    После этого тоже самое в:
    sudo nano /etc/nginx/sites-enabled/default

    Было php5-fpm.sock, стало так:

    location ~ \.php$ {
    include snippets/fastcgi-php.conf;
    fastcgi_pass unix:/var/run/php7.4-fpm.sock;
    }

    Ничего не помогает, 502 и все.
    Хелп!!!

    Ответить
    • Максим эта инструкция не работает, потому что половина информации вырезана и искажена для уникальности контента. Очередной высер рерайтера. Автор, сука, даже ссылку на исходник не оставил.

      Ответить
  3. Не работает, как и 99% инструкций в интернете: "Сделайте вот так!" , а если у вас так не получается и сыпятся ошибки, то мы не знаем что у вас случилось.

    Ответить
  4. Бывает, что выдает ошибку 404, особенно на хостинге firstvds
    Решается:
    sudo nano /etc/apache2/apache2.conf
    В конец файла добавляем
    Include /etc/phpmyadmin/apache.conf
    Перезапускаем сервис
    sudo systemctl restart apache2.service

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

    и с Ошибка при указании соединения для controluser в конфигурации.

    если подскажете подробнее как поднастроить, буду благодарен..
    так понимаю что вопрос заложен где то тут

    $cfg['Servers'][$i]['controlhost'] = 'localhost';
    $cfg['Servers'][$i]['controluser'] = 'pma'; /* Имя созданного вами только что пользователя для доступа к расширенным таблицам. */
    $cfg['Servers'][$i]['controlpass'] = 'пароль'; /* А здесь его пароль. */

    Ответить

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