PHPFlowPHP, MySQL, Laravel и JavaScript

phpMyAdmin: как войти через localhost/phpmyadmin, установить и настроить

Обновлено:

Коротко

phpMyAdmin - веб-панель для работы с MySQL и MariaDB прямо в браузере: создание баз и таблиц, импорт и экспорт дампов, пользователи и права. На локальном сервере он открывается по адресу http://localhost/phpmyadmin, логин по умолчанию - root с пустым паролем. Ниже - адреса для XAMPP и Open Server, установка на Windows, Ubuntu и nginx и решения ошибок, из-за которых не получается войти.

Содержание
  1. Что такое phpMyAdmin и какая версия актуальна
  2. Как открыть phpMyAdmin: адреса для XAMPP, Open Server и хостинга
  3. Логин и пароль phpMyAdmin по умолчанию
  4. Как установить phpMyAdmin на Windows вручную
  5. Установка phpMyAdmin на Ubuntu и Debian
  6. phpMyAdmin в Docker
  7. Основные действия в phpMyAdmin
  8. Частые ошибки phpMyAdmin и как их исправить
  9. Как защитить phpMyAdmin на рабочем сервере

Что такое phpMyAdmin и какая версия актуальна

phpMyAdmin - это обычное PHP-приложение: набор скриптов, который подключается к серверу MySQL или MariaDB и показывает базы в виде таблиц и форм. Отдельной программы на компьютере нет, всё работает через веб-сервер (Apache или nginx) и PHP. Поэтому phpMyAdmin нельзя "запустить" двойным кликом: сначала должны работать веб-сервер, PHP и сама СУБД.

Схема работы phpMyAdmin: браузер, веб-сервер, PHP, MySQL
phpMyAdmin работает через веб-сервер и PHP и только передаёт запросы серверу базы данных

На ноябрь 2026 года стабильная ветка - phpMyAdmin 5.2 (выпуск 5.2.3). Она работает на PHP 7.2 и новее, в том числе на PHP 8.4 и 8.5, и поддерживает MySQL 8.4 LTS, MySQL 9.x и MariaDB. Следующая большая версия 6.0 пока в разработке и будет требовать PHP 8.2+. Скачивать архив стоит только с официального сайта phpmyadmin.net: сборки со сторонних сайтов нередко содержат вредоносный код.

Что умеет панель:

  • создавать, переименовывать и удалять базы данных и таблицы;
  • выполнять SQL-запросы во вкладке "SQL" с подсветкой синтаксиса;
  • импортировать дампы .sql, .sql.gz, .zip и CSV;
  • экспортировать базу целиком или отдельные таблицы;
  • управлять учётными записями MySQL и их привилегиями;
  • смотреть переменные сервера, процессы и статистику.

Как открыть phpMyAdmin: адреса для XAMPP, Open Server и хостинга

Адрес зависит от того, какой сборкой вы пользуетесь. В большинстве случаев подходит http://localhost/phpmyadmin или то же самое через IP - http://127.0.0.1/phpmyadmin. Если по одному адресу открывается ошибка, попробуйте второй: иногда localhost перенаправлен в файле hosts или занят другой программой.

Где установленАдрес входаЛогин и пароль по умолчанию
XAMPP (Windows, Linux, macOS)http://localhost/phpmyadminroot, пароль пустой
Open Server Panel 6пункт "phpMyAdmin" в меню панели (модуль должен быть включён)root, пароль пустой
Open Server 5.xhttp://127.0.0.1/openserver/phpmyadmin/root, пароль пустой
Denwer (устаревший)http://localhost/tools/phpmyadminroot, пароль пустой
Ubuntu с пакетом phpmyadminhttp://IP-сервера/phpmyadminпользователь MySQL, которого вы создали
Хостингссылка в панели управления (раздел "Базы данных")логин и пароль базы из панели

Вход в phpMyAdmin в XAMPP

  1. Откройте XAMPP Control Panel.
  2. Нажмите "Start" напротив Apache и MySQL - названия модулей должны подсветиться зелёным.
  3. Нажмите кнопку "Admin" в строке MySQL или откройте в браузере http://localhost/phpmyadmin.

В XAMPP панель по умолчанию открывается сразу, без формы логина: в её конфиге стоит способ входа config с пользователем root. Подробно про саму сборку, порты и автозапуск - в статье об установке XAMPP на Windows.

Вход в phpMyAdmin в Open Server Panel

В Open Server Panel 6 phpMyAdmin - отдельный модуль. Если в меню панели нет пункта "phpMyAdmin", включите модуль в настройках, перезапустите панель и выберите пункт меню ещё раз - браузер откроет форму входа. Модуль MySQL или MariaDB тоже должен быть запущен, иначе вход завершится ошибкой #2002. Как устроены модули и домены в шестой версии, разобрано в материале про установку Open Server Panel.

Форма входа phpMyAdmin с полями Пользователь и Пароль
Форма входа phpMyAdmin: логин и пароль - это учётная запись MySQL, а не отдельный аккаунт панели

Логин и пароль phpMyAdmin по умолчанию

У phpMyAdmin нет собственных учётных записей. В форме входа вы вводите логин и пароль пользователя MySQL или MariaDB, а панель просто передаёт их серверу базы данных. Отсюда три правила:

  • в локальных сборках (XAMPP, Open Server) это root с пустым паролем, если вы его не меняли;
  • на хостинге - имя и пароль базы, которые выдала панель хостинга, а не пароль от личного кабинета;
  • на своём сервере Ubuntu - любой пользователь MySQL, у которого есть пароль; root там часто входит только через сокет и в phpMyAdmin не пускается.

Если в форме ввести root с пустым паролем, а в ответ появится "Login without a password is forbidden by configuration (see AllowNoPassword)", значит, вход без пароля запрещён настройкой. Правильное решение - задать root пароль. Временное решение для локальной машины - строка в config.inc.php:

// Разрешить вход без пароля (только для локальной разработки!)
$cfg['Servers'][$i]['AllowNoPassword'] = true;

Как задать или сменить пароль пользователю, создать отдельного пользователя для сайта и выдать ему права только на одну базу - в статье о пользователях MySQL и GRANT.

Способы входа: cookie, config и http

За поведение формы входа отвечает параметр auth_type в файле config.inc.php (в XAMPP - C:\xampp\phpMyAdmin\config.inc.php, в Ubuntu - /etc/phpmyadmin/config.inc.php):

auth_typeКак работаетКогда подходит
cookieФорма логина, сессия хранится в зашифрованной cookieЛюбой сервер, рекомендуемый вариант
configЛогин и пароль записаны в конфиге, вход без формыТолько локальный компьютер
httpОкно базовой авторизации браузераРедко, когда нужен вход без cookie

Как установить phpMyAdmin на Windows вручную

Ручная установка нужна, если у вас Apache, PHP и MySQL поставлены по отдельности или сборка пришла без панели. Понадобятся работающий веб-сервер с PHP 8.2+ и включёнными расширениями mysqli, mbstring, openssl.

  1. Скачайте с phpmyadmin.net архив "phpMyAdmin-5.2.3-all-languages.zip".
  2. Распакуйте его в папку сайта, например в C:\Apache24\htdocs, и переименуйте папку в phpmyadmin.
  3. Скопируйте файл config.sample.inc.php в той же папке под именем config.inc.php.
  4. Откройте config.inc.php и впишите в $cfg['blowfish_secret'] случайную строку ровно из 32 символов.
  5. Проверьте, что в php.ini раскомментированы строки extension=mysqli и extension=mbstring, и перезапустите Apache.
  6. Откройте http://localhost/phpmyadmin и войдите пользователем MySQL.
Файл config.inc.php phpMyAdmin с blowfish_secret и auth_type
Минимальный config.inc.php: секретный ключ и способ входа cookie

Если вы не знаете, какой php.ini использует Apache, загляните в разбор расположения php.ini: у CLI и у веб-сервера файлы часто разные. Ключ для blowfish_secret удобно получить так:

# 32 случайных символа для blowfish_secret
php -r "echo bin2hex(random_bytes(16)), PHP_EOL;"

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

На сервере с Ubuntu 24.04 или 26.04 LTS и Debian 12/13 phpMyAdmin ставится пакетом из штатного репозитория. Предполагается, что MySQL или MariaDB уже установлены и работают.

  1. Обновите список пакетов: sudo apt update.
  2. Установите панель и нужные модули PHP: sudo apt install phpmyadmin php-mbstring php-zip php-gd.
  3. В окне выбора веб-сервера отметьте пробелом apache2 (для nginx ничего не отмечайте) и нажмите Enter.
  4. На вопрос "Configure database for phpmyadmin with dbconfig-common?" ответьте "Yes" и задайте пароль служебного пользователя.
  5. Перезапустите веб-сервер: sudo systemctl restart apache2.
Команды установки phpMyAdmin в терминале Ubuntu
Установка phpMyAdmin в Ubuntu: пакет, выбор веб-сервера и перезапуск Apache

Пакет кладёт файлы в /usr/share/phpmyadmin, конфиг - в /etc/phpmyadmin/, а для Apache подключает /etc/apache2/conf-enabled/phpmyadmin.conf. Если после установки адрес /phpmyadmin отдаёт 404, включите конфиг вручную: sudo a2enconf phpmyadmin и перезапустите Apache.

В Ubuntu пользователь root в MySQL по умолчанию входит через плагин auth_socket: в терминале sudo mysql пускает без пароля, а phpMyAdmin выдаёт #1045. Не переключайте root на пароль ради панели - создайте отдельного пользователя с нужными правами и входите им.

Настройка phpMyAdmin для nginx

Для nginx автоматической настройки нет, адрес нужно описать в конфиге сайта. Пример блока для PHP-FPM 8.4 (замените номер версии на свой):

# /etc/nginx/sites-available/default, внутри server { }
location /phpmyadmin {
    root /usr/share;
    index index.php;

    location ~ ^/phpmyadmin/(.+\.php)$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/run/php/php8.4-fpm.sock;
    }

    # Статика панели: стили, скрипты, картинки
    location ~* ^/phpmyadmin/(.+\.(css|js|png|jpg|gif|ico|svg|woff2?))$ {
        expires 7d;
    }
}

После правки проверьте синтаксис командой sudo nginx -t и перечитайте конфиг: sudo systemctl reload nginx. Если nginx отдаёт "502 Bad Gateway", путь к сокету не совпадает с установленной версией PHP - посмотрите список файлов в /run/php/.

phpMyAdmin в Docker

Если проект уже работает в контейнерах, панель удобнее запустить официальным образом phpmyadmin и подключить к контейнеру с базой. Пример для docker compose:

services:
  db:
    image: mysql:8.4
    environment:
      MYSQL_ROOT_PASSWORD: secret
  pma:
    image: phpmyadmin:5.2
    ports:
      - "8080:80"        # панель на http://localhost:8080
    environment:
      PMA_HOST: db       # имя сервиса с MySQL
      UPLOAD_LIMIT: 256M # лимит импорта дампов
    depends_on:
      - db

После docker compose up -d откройте http://localhost:8080 и войдите как root с паролем из MYSQL_ROOT_PASSWORD. Полная связка PHP, nginx и MySQL в контейнерах разобрана в статье про Docker для PHP.

Основные действия в phpMyAdmin

Создать базу данных

  1. Откройте вкладку "Базы данных" в верхнем меню.
  2. Введите имя базы латиницей, например shop.
  3. В списке сравнений выберите utf8mb4_unicode_ci или utf8mb4_0900_ai_ci (для MySQL 8).
  4. Нажмите "Создать".
Вкладка Базы данных в phpMyAdmin, создание базы shop
Создание новой базы во вкладке "Базы данных" с кодировкой utf8mb4

Импорт и экспорт дампа

Для импорта выберите базу слева, откройте вкладку "Импорт", укажите файл и нажмите "Импорт" внизу страницы. Для экспорта - вкладка "Экспорт", способ "Быстрый", формат SQL. Ограничение размера загружаемого файла задаётся в PHP параметрами upload_max_filesize и post_max_size; оба значения меняются в php.ini, после чего нужно перезапустить веб-сервер. Дампы на сотни мегабайт надёжнее загружать из консоли:

# Импорт большого дампа в базу shop
mysql -u root -p shop < dump.sql

Частые ошибки phpMyAdmin и как их исправить

СообщениеПричинаКак исправить
#1045 Access denied for user 'root'@'localhost'Неверный пароль или root входит через auth_socketПроверьте пароль, создайте отдельного пользователя MySQL
#2002 Cannot connect, сервер не отвечаетMySQL не запущен или неверный хост/сокетЗапустите MySQL, укажите 127.0.0.1 вместо localhost
404 Not Found по адресу /phpmyadminПапка лежит не там или конфиг веб-сервера не подключёнПроверьте путь к папке, выполните a2enconf phpmyadmin
The mysqli extension is missingНе включено расширение mysqliРаскомментируйте extension=mysqli в php.ini
The configuration file now needs a secret passphraseПустой blowfish_secretВпишите строку из 32 символов в config.inc.php
Login without a password is forbiddenЗапрещён вход с пустым паролемЗадайте пароль пользователю или включите AllowNoPassword локально
Страница без стилей, "голый" текстnginx не отдаёт CSS и JS панелиПроверьте root и правила статики в location

Ошибка #2002 в Linux часто связана с путём к сокету mysqld.sock - подробный разбор есть в статье про ERROR 2002. Если после входа открывается пустая белая страница или "500 Internal Server Error", включите вывод ошибок PHP и посмотрите лог веб-сервера: обычно не хватает модуля PHP или прав на папку tmp панели.

Когда форма входа принимает логин, но сразу выкидывает обратно, очистите cookie для localhost: старая сессия от другой версии панели мешает новой.

Как защитить phpMyAdmin на рабочем сервере

Адрес /phpmyadmin проверяют все боты, которые подбирают пароли. Если панель нужна на сервере в интернете, примите хотя бы часть мер:

  • смените адрес: в nginx замените location /phpmyadmin на неочевидный путь, в Apache - строку Alias в phpmyadmin.conf;
  • закройте панель дополнительным паролем веб-сервера (basic auth) или разрешите доступ только с вашего IP;
  • запретите вход root: $cfg['Servers'][$i]['AllowRoot'] = false;;
  • работайте только по HTTPS и обновляйте пакет вместе с системой;
  • для доступа к базе с домашнего компьютера используйте SSH-туннель вместо открытой панели.
# Доступ к панели только с одного IP
location /phpmyadmin {
    allow 203.0.113.10;
    deny all;
    root /usr/share;
    index index.php;
}

Для повседневной разработки на своём компьютере всё это не обязательно: локальный сервер недоступен извне, и root без пароля там допустим.

Частые вопросы

Какой логин и пароль у phpMyAdmin по умолчанию?

В XAMPP и Open Server - root с пустым паролем. На хостинге вводят логин и пароль базы из панели хостинга, на своём сервере - пользователя MySQL, которого вы создали.

Почему не открывается localhost/phpmyadmin?

Чаще всего не запущен Apache или MySQL, занят порт 80 или папка панели лежит не в корне сайта. Запустите модули в панели сборки и попробуйте адрес http://127.0.0.1/phpmyadmin.

Как открыть phpMyAdmin в Open Server?

В Open Server Panel 6 включите модуль phpMyAdmin в настройках и выберите одноимённый пункт меню панели. В версии 5.x адрес - http://127.0.0.1/openserver/phpmyadmin/.

Можно ли пользоваться phpMyAdmin онлайн без установки?

Панель всегда работает на сервере рядом с базой: на хостинге она уже есть в панели управления, локально её дают XAMPP и Open Server. Вводить пароль от своей базы на сторонних "онлайн-phpMyAdmin" небезопасно.

Как сбросить пароль root, если не пускает в phpMyAdmin?

Пароль меняется в самой MySQL, а не в панели. Порядок действий описан в статье о пользователях MySQL.

Работает ли phpMyAdmin с nginx?

Да, достаточно описать location /phpmyadmin с передачей .php-файлов в PHP-FPM, как в примере выше, и перечитать конфиг nginx.