Конфигурационный файл phpmyadmin где находится

Обновлено: 06.07.2024

Это подробная и пошаговая инструкция, как установить и настроить phpMyAdmin. Вам потребуется:

  • Сервер Ubuntu 20.04, который должен иметь пользователя без прав root с правами администратора, а, также, брандмауэр, настроенный с помощью ufw .
  • Стек LAMP (Linux, Apache, MySQL и PHP), установленный на вашем сервере.

Установка phpMyAdmin

Помимо пакета phpmyadmin , официальная документация рекомендует установить несколько расширений PHP для возможности использования определенной функциональности и улучшения производительности, а именно:

  • php-mbstring - модуль для работы со строками, не поддерживающими кодировку ASCII;
  • php-zip – расширение, поддерживающее загрузку файлов .zip ;
  • php-gd - поддержка библиотеки GD Graphics;
  • php-json - поддержка сериализации JSON;
  • php-curl – расширение, позволяющее PHP взаимодействовать с разными типами серверов, используя разные протоколы.

Сначала обновите индекс пакетов сервера:

Для запуска установки запустите команду:

При установке необходимо выбрать следующие параметры при запросах:

  • При выборе сервера выбирайте apache2.
  • На вопрос о необходимости использования dbconfig-common для настройки базы данных, следует выбрать « Да» .
  • Затем необходимо выбрать и подтвердить пароль приложения MySQL для phpMyAdmin.

Отключение компоненты Validate Password

Если вы установили MySQL, следуя руководству по установке LAMP, то, скорее всего, вы активировали плагин Validate Password. Это может вызвать ошибку при попытке задать пароль пользователя phpmyadmin:

Корректный вывод при установке MySQL

Для устранения проблемы выберите опцию «abort», чтобы прервать процесс установки и открыть командную строку MySQL:

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

Далее, запустите команду для отключения Validate Password. Важно, что в этом случае выполняется не удаление, а простая остановка загрузки компонента на сервер MySQL:

После этого клиент MySQL можно закрыть:

Затем снова установите пакет phpmyadmin :

Далее, необходимо снова открыть командную строку MySQL с помощью sudo mysql или mysql -u root -p , и запустить команду повторной активации Validate Password:

В процессе установки будет добавлен файл конфигурации phpMyAdmin в каталог /etc/apache2/conf-enabled . Для завершения настройки работы Apache и PHP с phpMyAdmin выполните инструкцию для активации расширения PHP mbstring командой:

Теперь phpMyAdmin установлен и настроен для работы с Apache. Однако, прежде чем вы сможете войти и начать работу с базами данных, необходимо убедиться, что у пользователей MySQL есть права для взаимодействия с программой.

Настройка доступа для рутовой учетной записи MySQL

Для рутового пользователя MySQL в Ubuntu 20.04 установлена аутентификация при помощью плагина auth_socket по умолчанию. Это позволяет обеспечивать самое оптимальное соотношение удобства использования и безопасности. В свою очередь, это создаёт сложности при предоставлении доступа к пользователю в других внешних приложениях, например, в phpMyAdmin.

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

ввести команду вывода методов аутентификации для аккаунтов MySQL:

Результат выполнения команды выглядит примерно так:

Вывод таблицы mysqlпир настройке phpmyadmin на linux ubuntu

В примере можно увидеть, что пользователь root использует плагин auth_socket . Чтобы изменить метод аутентификации запустите на выполнение команду , обязательно изменив значение 1234567890 на надежный пароль по вашему выбору:

Теперь необходимо снова ввести в командной строке:

Вывод команды будет выглядеть следующим образом:


В результате вывод исполненной инструкции должен показать, что пользователь root использует плагин cashing_sha2_password, то есть аутентификацию с помощью пароля.

Настройка доступа для специально созданного пользователя MySQL

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

Создать нового пользователя с надежным паролем (в данном случае пароль 1234567890 не является надёжным):

Обеспечить нового пользователя наличием соответствующих прав в части доступа к таблицам базы данных:

После чего можно выйти из MySQL:

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

веб-интерфейс phpmyadmin на linux ubuntu

Теперь можно войти в интерфейс phpMyAdmin через пользователя root или с новыми пользователем.

Обеспечение безопасности phpMyAdmin

Если есть необходимость дополнительно защититься от несанкционированного доступа к вашему ресурсу через web-интерфейс phpMyAdmin, можно разместить шлюз перед всем приложением с помощью встроенного в Apache функционала авторизации и аутентификации через .htaccess.

Настройка конфигурационного файла

Для этого нужно сначала активировать перезапись файла .htaccess, изменив файл конфигурации Apache вашей установки phpMyAdmin.

Отредактируйте phpmyadmin.conf, который находится в каталоге конфигурации Apache (я использовал nano):

Добавьте директиву AllowOverride All в раздел файла конфигурации <Directory /usr/share/phpmyadmin> , например:

Добавьте эту строку, сохраните и закройте файл (при использовании nano для редактирования файла, нажмите CTRL + X, Y, а затем ENTER).

Создание и настройка .htaccess

Теперь, когда вы активировали использование файлов .htaccess, вам нужно создать файл для реализации этого уровня защиты.

Файл .htaccess должен находиться в папке приложения. Для этого ннеобходимо создать его и открыть в редакторе с привилегиями root следующей командой:

В этот файл добавьте следующие строки:

В данном случае файла пароля находится в /etc/phpmyadmin/.htpasswd. Теперь нужно создать заявленный файл и передать его пользователю при помощью утилиты htpasswd:

Далее, необходимо дважды ввести пароль пользователя, которого вы создаете. Результатом будет созданный файл, в котором схэширован придуманный пароль.

Чтобы ввести дополнительного пользователя, необходимо использовать утилиту htpasswd без флага -c:

Теперь, для доступа к phpMyAdmin через web-интерфейс, необходим указать имя учетной записи и пароль:

как логиниться при настройке phpmyadmin на linux

Если имя пользователя и пароль набраны верно, вы должны будете перейти на страницу phpMyAdmin.

phpMyAdmin — веб-инструмент для управления базами данных MySQL с помощью фронтенда на Apache/PHP.

Contents

Установка

Запуск

Убедитесь, что mysql-расширения PHP были включены.

При необходимости можно также включить extension=bz2 и extension=zip для поддержки сжатия.

Apache

Создайте файл конфигурации Apache:

Добавьте в конфигурацию следующее альтернативное имя для PhpMyAdmin:

Nginx

Настройте FastCGI и используйте серверные блоки, чтобы упростить управление.

Настройка

Главный файл конфигурации находится в /usr/share/webapps/phpMyAdmin/config.inc.php .

Определение удаленного сервера MySQL

Если MySQL-сервер находится на удалённом хосте, добавьте следующую строку в файл конфигурации:

Использование скрипта установки

Добавление парольной фразы blowfish_secret

Включение хранилища настроек

Примечание: В этом примере предполагается, что вы используете стандартное имя пользователя pma в качестве controluser и pmapass в качестве controlpass .

В /usr/share/webapps/phpMyAdmin/config.inc.php , раскомментируйте (удалите символы "//") и при необходимости измените их на нужные учетные данные:

Настройка базы данных

Для создания необходимых таблиц доступны два варианта:

  • Импортируйте /usr/share/webapps/phpMyAdmin/sql/create_tables.sql , используя PhpMyAdmin.
  • Выполните команду mysql -u root -p < /usr/share/webapps/phpMyAdmin/sql/create_tables.sql в терминале.

Настройка пользователя базы данных

Чтобы применить необходимые разрешения для controluser , выполните следующий запрос:

Примечание: Обязательно замените все экземпляры pma и pmapass на значения, заданные в config.inc.php . Если вы настраиваете это для удалённой базы данных, вы также должны изменить localhost на соответствующий хост.

Чтобы использовать функции закладок и отношений, установите следующие разрешения:

Повторно войдите в систему, чтобы убедиться, что новые функции активированы.

Включение кеширования шаблонов

Добавьте следующую строку в /usr/share/webapps/phpMyAdmin/config.inc.php :

Удаление каталога конфигурации

Удалите временный каталог конфигурации после завершения настройки. Удаление каталога также устранит предупреждение из веб-интерфейса:

date

18.09.2014

directory

Windows Server 2012

comments

комментария 4

В этой статье мы покажем, как установить и настроить скрипт phpMyAdmin на веб-сервере IIS в Windows 8/ Windows Server 2012. Предполагается, что вы уже настроили IIS с поддержкой PHP и запустили сервер MySQL.

Создадим в каталоге C:\inetpub\wwwroot\ папку с именем phpmyadmin и распакуем в нее содержимое скачанного архива.

Перейдем к первоначальной настройке phpMyAdmin. Прежде, чем подключится к серверу MySQL, нужно создать конфигурационный файл. Данный файл можно создать вручную (путем редактирования файла config.sample.inc.php в корне установки phpMyAdmin и сохранения его с именем config.inc.php) или с помощью графического интерфейса.

phpmyadmin мастер установки

Невозможно загрузить или сохранить настройки
Пожалуйста, создайте на сервере в корневой директории phpMyAdmin каталог config и установите у него разрешение на запись, как описано в документации. В противном случае вы сможете только скачать, или просмотреть его.

Создадим в корне каталога скрипта (внутри папки phpmyadmin) папку config . И в настройках безопасности папки config предоставим полные права группе IIS_IUSRS и пользователю IUSR

Выставляем права на каталог C:\inetpub\wwwroot\phpmyadmin\config

Возвращаемся в окно конфигуратора. Для настройки параметров подключения к MySQL нажмем на кнопку «Новый сервер»

phpmyadmin параметры подключения к серверу mysql

Укажем пользовательское имя сервера MySQL и имя хоста сервера. В случае необходимости можно указать и другие настройки.

Сохраняем настройки, после чего нас перенаправляет на предыдущую страницу. Выбираем:

phpmyadmin свойства mysql сервера

Совет. Файл config.inc.php можно создать и вручную, для чего в корне каталога скрипта нужно найти файл config.sample.inc.php и переименовать его config.inc.php. Раскоментируйте строки
// $cfg['Servers'][$i]['pmadb'] = 'phpmyadmin';
// $cfg['Servers'][$i]['bookmarktable'] = 'pma_bookmark';
// $cfg['Servers'][$i]['relation'] = 'pma_relation';
// $cfg['Servers'][$i]['table_info'] = 'pma_table_info';
// $cfg['Servers'][$i]['table_coords'] = 'pma_table_coords';
// $cfg['Servers'][$i]['pdf_pages'] = 'pma_pdf_pages';
// $cfg['Servers'][$i]['column_info'] = 'pma_column_info';
// $cfg['Servers'][$i]['history'] = 'pma_history';
// $cfg['Servers'][$i]['tracking'] = 'pma_tracking';

Localhost замените на 127.0.0.1 и сохраните изменения в файле.

Скрипт для создания служебной БД phpMyAdmin

Если все сделано верно, среди баз данных MySQL должна появится еще одна, с именем phpmyadmin.

База данных phpmyadmin

Также скрипту phpMyAdmin для корректной работы требуется выделенная учетная запись MySQL. Рекомендуется создать учетную запись с именем pma.

Создадим новую учетку:

Имя пользователя (User name): pma
Хост (Host): localhost
Пароль (Password): sTr0ngPmapa$$

phpmyadmin служебный пользователь pma

И предоставим ей полные права на БД phpMyAdmin.

pma права доступа на базу phpmyadmin

В файле же config.inc.php нужно раскомментировать/добавить строки

$cfg['Servers'][$i]['controluser'] = 'pma';
$cfg['Servers'][$i]['controlpass'] = ‘sTr0ngPmapa$$’;

На этом установка и настройка скрипта phpMyAdmin в Windows 8 закончена и можно переходить к развертыванию на нашем IIS сервере сайтов на базе любой популярной CMS. Подробнее об этом в следующей статье.

Доступ в phpmyadmin осуществляется через пользователей базы данных, используя их логины и пароли. Сразу после установки в базе будет создан пользователь root без пароля, имеющий полный административный доступ к базе данных.
По умолчанию phpmyadmin настроен на работу именно с пользователем root без пароля, поэтому вход в phpmyadmin происходит без ввода логина и пароля с максимальными правами.

Естественно, в первую очередь нужно установить пароль пользователю root.
Заходите в phpmyadmin и нажимайте на вкладку "Привилегии".
Тут вы должны увидеть минимум двух пользователей "pma" и "root"
Примерно так



Пользователь pma необходим для phpmyadmin для его внутренних административных целей.
По умолчанию он тоже без пароля, поэтому пользователю pma тоже нужно поставить пароль.
Именно с пользователя pma лучше и начать.
Нажимайте на иконку редактирования привилегий возле пользователя pma


Когда войдете в редактирование привилегий пользователя, никакие галочки не трогайте, все оставьте как есть, только добавьте пароль и нажмите ОК

Теперь снова вернитесь к пользователям в Привелегии и точно так же смените пароль пользователю root.
Обратите внимание, после того как вы установите пароль пользователю root вы больше не сможете войти в phpmyadmin без пароля, доступ сразу же будет закрыт .
Поэтому запомните пароль.

Теперь начинаем настраивать phpmyadmin.

Редактировать настройки phpmyadmin будем с помощью файла config.inc.php, который находится в папке с установленным phpmyadmin.
Я расскажу о наиболее важных настройках, если каких-то параметров вы не найдете в файле настроек, можете добавить их.

Начнем с авторизации и входа.
В конфиге за это дело отвечают следующие переменные

$cfg['Servers'][$i]['auth_type'] = 'config';
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = '';
$cfg['Servers'][$i]['AllowNoPassword'] = true;

$cfg['Servers'][$i]['auth_type']
Это тип авторизации.
Если значение 'cookie', то логин и пароль будет запрашиваться при входе в phpmyadmin.
Если значение 'config', то логин и пароль для доступа к базе нужно прописать в этом конфиге в переменных
$cfg['Servers'][$i]['user']
$cfg['Servers'][$i]['password']
и входить можно будет не указывая логин и пароль.
При авторизации 'cookie' прописывать логин и пароль здесь не нужно.

$cfg['Servers'][$i]['AllowNoPassword'] = true;
Разрешение входить под пользователями без установленных паролей.
Эту переменную лучше установить в false, тем самым запретить входить под пользователями без установленных паролей.

Дальше нужно прописать пароль для пользователя pma, чтобы phpmyadmin мог соединяться со своей базой

$cfg['Servers'][$i]['controluser'] = 'pma';
$cfg['Servers'][$i]['controlpass'] = '';
Это переменные логин и пароль для pma. Пропишите в controlpass пароль, который указали.


$cfg['blowfish_secret'] = 'xampp';
Это любая произвольная фраза-ключ для шифрования паролей в куках.
Желательно изменить стандартную фразу.
Если этой переменной у вас нет, добавьте ее.

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

Установка веб сервера на windows
Настройка и защита apache под windows
Бесплатный ДНС сервер
Настройка php
Настройка mysql
Настройка phpmyadmin (эта статья)
Настройка sendmail
Настройка ftp сервера FileZilla

Комментарии

что не так ?
спасибо



09.01.2011 serdjuzz
вот всегда так )))
спросишь и разберешься )))
спасибо, хелп ваш зрелый = это я туплю

Админ, не подскажешь? Заранее спасибо.


21.01.2011 админ
Алексей, в статье "Настройка и защита apache под windows" я коснулся этой темы.

Смотрим самый конец статьи.
Цитирую

<LocationMatch "^/(?i:(?:xampp|security|licenses|phpmyadmin|webalizer|server-status|server-info))">
.
</LocationMatch>

Эта конструкция и запрещает доступ снаружи, конечно сам запрет находится внутри этой конструкции, но если вам нужно открыть внешний доступ например для phpmyadmin, то просто удалите его из этого списка.
==============

То есть из строки
<LocationMatch "^/(?i:(?:xampp|security|licenses|phpmyadmin|webalizer|server-status|server-info))">
удалите phpmyadmin


26.05.2011 Дмитрий
После всех настроек phpAdmin вообще перестал открываться. На нажатия кнопки в панели не реагирует. После ввода в командную строку в локале выдает ошибку 403 и "доступ закрыт". Извне так же ошибка. Куда копать? Все настроено в строгости с вашей инструкцией.


27.05.2011 Админ
Дмитрий, скорее всего в настройках сервера что-то сделали.
403 это скорее всего направлен запрос на каталог, который не имеет индексного файла и в настройках сервера запрещен листинг файлов.
Мне кажется, что где то в настройках апача прописали не верный путь до phpmyadmin.

То все.. phpmyadmin становится недоступным вообще. Ни из локала, ни снаружи. В файле hosts все прописано, что нужно. пути все правильны.

Правда еще одну ошибку выдавало:
В файле php.ini если прописать директорию D:/xampp/, то выдавало ошибку. Оказалось нужно прописывать D:\xampp\. В этом файле половина путей прописана со слэшами то в одну, то в другую сторону. Может сборка 1.7.4 не оттестирована подобающим образом?



30.05.2011 админ
Дмитрий, вот со слешами странная ситуация.
Действительно есть такая проблема, слеши в разные стороны.
У некоторых это вызывает проблемы, у некоторых нет.
У некоторых работают слеши в одну сторону, у некоторых в другую.
А у многих работают все слеши.
Почему такая ерунда с этими слешами, я не могу понять



10.08.2011 Олег
Установил, сделал защиту, настроил php,mysql,phpmyadmin, мне больше пока не надо так вот появилось такое
Access forbidden!

If you think this is a server error, please contact the webmaster.
Error 403
localhost
10.08.2011 23:38:10
Apache
в phpmyadmin могу зайти, но что делать не знаю. помогите пожалуйсто.


11.08.2011 Олег
А да забыл добавить что все работало пока я не перезагрузил Apache


22.08.2011 Виктор
Олег, в настройках значит стоит запрет на чтение директории без индексного файла или еще где то запрет.
Но это уже надо смотреть все по месту, так сложно сказать почему запрещен доступ к директории.


21.09.2011 максим
поменял пароль на root и способ входа установил cookie
Теперь при входе в а вадминку выдает ошибку
Error


15.01.2013 zenon
отличная статья, спасибо


20.02.2013 Gannibal
Подскажите пожалуйста а как удалить правельно те что на скрине выделил стрелками.


10.02.2014 Кривая статья
После установки пароля нет доступа к админке. Проще в 10 раз на время НЕ использования phpmyadmin папку хамрр перемещать в другой директорий. И никто в жизни ее не найдет.


26.07.2016 Евгений
Типичная абсолютно бесполезная статья, написаная непонятно кем и непонятно для чего!

"Зайдите во вкладку Привилегии. " А вот НЕТ ТАКОЙ ВКЛАДКИ в PHPmyadmin. НЕТ И ВСЁ! Нахрена писать такие статьи.

Я потому и начал искать материалы, что эта тупая программа впринципе не содержит в интерфейсе ничего похожего на настройки доступа. И автор этой "статьи" ничем не помог.

Читайте также: