phpMyAdmin
Содержание
phpMyAdmin
Установка
Перед установкой phpMyAdmin вам потребуется доступ к базе MySQL на том же самом компьютере, где вы устанавливаете phpMyAdmin, либо на удаленном компьютере, доступным по сети. Подробности смотрите в разделе MySQL. Для установки в терминале введите:
По запросу выберите какой web сервер будет настроен для phpMyAdmin. В этом разделе предполагается использование в качестве web сервера Apache2.
Далее производим настройку apache для обеспечения работы phpMyAdmin.
Начиная с ubuntu 13.10 необходимо выполнить команды в терминале:
После этого попробуйте снова войти через браузер.
Как только вы авторизуетесь, вы сможете при необходимости сменить пароль пользователя root, создавать пользователей, создавать/удалять базы данных, таблицы и пр.
Настройка
Чтобы использовать phpMyAdmin для управления MySQL на другом сервере, настройте следующую запись в /etc/phpmyadmin/config.inc.php:
После настройки выйдите из phpMyAdmin и зайдите снова и вы получите доступ к новому серверу.
Файлы config.header.inc.php и config.footer.inc.php используются для добавления HTML верхнего и нижнего заголовков для phpMyAdmin.
Ограничить видимость для интернета
в файл /etc/apache2/conf-enabled/phpmyadmin.conf под строчкой
Ссылки
Документация по phpMyAdmin устанавливается из пакета и доступна по ссылке phpMyAdmin Documentation (знак вопроса в обрамлении) под логотипом phpMyAdmin. Официальная документация также доступна на сайте phpMyAdmin.
Etc phpmyadmin config inc php
1. Качаем последнюю версию phpmyadmin, см. ссылки [1]. Распаковываем архив, который мы скачали, куда-нибудь на локальном компьютере (не на web-сервер). В архиве имеется папка phpMyAdmin-3.4.4-all-languages (3.4.4 это текущая версия phpMyAdmin), и в этой папке есть другие папки contrib, js, libraries и другие, а также php-файлы config.sample.inc.php, index.php и прочие. Эти файлы и папки как раз и составляют систему phpMyAdmin.
3. В папку www/tools помещаем пустой файл-заглушку index.html с таким содержимым:
Этот пустой файл-заглушка нужен для того, чтобы нельзя было получить список папок внутри папки www/tools.
6. Конфигурирование phpMyAdmin закончено, теперь можно получить доступ к консоли управления базами данных MySQL по ссылке http://имя_домена_сайта.ru/tools/D9B96C56/.
[Устранение ошибки The configuration file now needs a secret passphrase (blowfish_secret)]
Иногда не получается получить доступ к консоли управления phpMyAdmin из-за ошибки такого вида:
Устранить ошибку можно следующим способом, процесс по шагам:
1. Найдите конфигурационный файл подсистемы PHP (файл с именем config.inc.php). Это можно сделать командой:
Как Вы видите, здесь вывелось сразу несколько файлов с именем config.inc.php. Вероятно, что используется текущий конфигурационный файл (для системы Debian) это /etc/phpmyadmin/config.inc.php.
2. Откройте этот файл конфигурации config.inc.php. В нем находится строчка, загружающая секретную фразу blowfish_secret, отправляемую браузером из cookie:
Откройте файл blowfish_secret.inc.php, в нем увидите что-то наподобие:
Эту секретную строку нужно добавить в куки браузера, чтобы она точно совпадала.
Для браузера Chrome есть бесплатное расширение EditThisCookie, которое позволяет редактировать файлы cookie.
Отредактируйте cookie для mhpMyAdmin так, чтобы строка в cookie совпадала со значением строки, введенной после знака = в конфигурационном файле blowfish_secret.inc.php (без одиночных кавычек):
3. Перезагрузите сервер Apache:
После этого страничка phpMyAdmin будет открываться нормально.
Записки IT специалиста
Технический блог специалистов ООО»Интерфейс»
Установка phpMyAdmin в Debian 10
Важно! Если вы хотите использовать данную инструкцию в среде отличной от Debian 10 и у вас уже установлена версия из репозитория, то перед тем, как приступать к описанным ниже действиям ее следует удалить.
Прежде всего установим зависимости и рекомендуемые пакеты, часть из них уже может быть установлена в вашей системе, но это никак не повлияет на дальнейшие действия, просто в процессе установки вы получите сообщение, что данный пакет уже установлен:
Затем создадим необходимые директории:
И установим нужного владельца:
Перейдем в домашнюю директорию и скачаем архив с официального сайта:
Распакуем архив сразу в целевую директорию:
Ключ —strip-components 1 предписывает не создавать вложенную папку первого уровня.
Изменим рабочую директорию и скопируем файл настроек из шаблона:
Затем откроем файл config.inc.php на редактирование. Первым делом найдем директиву blowfish_secret и установим для нее парольную фразу длинной 32 символа:
Затем раскомментируем блок User used to manipulate with storage и в опции controlpass установим пароль для служебного пользователя pma:
Еще ниже полностью раскомментируем секцию Storage database and tables:
А после нее добавим следующую опцию:
Еще ниже найдем и раскомментируем опцию, отвечающую за язык по умолчанию:
В нашем случае это русский, посмотреть доступные языки и их коды можно в директории /usr/share/phpmyadmin/locale.
Теперь создадим пользователя СУБД и назначим ему необходимые права, для начала войдем в консоль MySQL (MariaDB):
и выполним там следующие команды:
Обратите внимание, что в опции IDENTIFIED BY мы должны указать тот же пароль, который был задан в controlpass конфигурационного файла.
Сбросим кеш привилегий и выйдем из консоли:
После чего создадим служебную базу данных и произведем ее начальное заполнение:
На этом установка phpMyAdmin закончена. В целях безопасности удалим служебную директорию setup:
Далее мы рассмотрим подключение утилиты к популярным веб-серверам.
Настройка Apache 2 для работы с phpMyAdmin
Создадим файл конфигурации Apache:
И внесем в него следующие директивы:
Сохраним файл и подключим конфигурацию:
Проверим конфигурацию Apache на ошибки:
И перезапустим веб-сервер:
Настройка NGINX для работы с phpMyAdmin
Будем считать, что у вас уже установлен NGINX и PHP-FPM по нашей инструкции, в противном случае вам потребуется откорректировать пути в соответствии с собственными настройками.
Создадим новый шаблон:
И внесем в него следующий текст:
Сохраним его и подключим к нужным сайтам добавим в конце их конфигурационных файлов директиву:
Проверим правильность конфигурации NGINX:
И перезапустим службы:
Затем точно также наберем http://example.com/phpmyadmin и убедимся в работоспособности утилиты:
Как видим, установить phpMyAdmin вручную достаточно просто. Для обновления вам потребуется просто скачать архив с новой версией и распаковать поверх существующей установки, не забыв удалить потом директорию setup. В ряде случаев потребуется обновить служебную базу данных, скрипты для этого находятся в директории sql, подробности вы сможете узнать в официальной документации к новой версии.
Помогла статья? Поддержи автора и новые статьи будут выходить чаще:
Или подпишись на наш Телеграм-канал:
phpMyAdmin – установка, решение проблем при установке и настройке
PhpMyAdmin самое популярное web ориентированное управление базой данных MySQL. Незаменимый инструмент для всех, кто не дружит с языком команд MySQL сервера.
Для работы phpMyAdmin у вас должны уже стоять и работать
Установка в Ubuntu
Установку выполняем командой
Установщик спросит на какой http сервер ставим – я выбрал apache2, т.к. он уже стоял у меня. Далее скрипт установки попросил создать и сконфигурировать базу данных phpmyadmin – соглашаемся и вводим пользователя и пароль для управления этой базой данных.
После установки все конфиги хранятся в /etc/phpmyadmin. На всякий случай перезапускаем http сервер.
В браузере вводим http://localhost/phpmyadmin/ и авторизуемся от пользователей MySQL сервера.
Авторизация в phpMyAdmin
Установка из исходников
Чтобы представлять что происходит при установке phpMyAdmin, я покажу действия, которые выполняют установочные скрипты многих дистрибутивов. К тому же способ установки из исходников универсален и подходит для всех Unix систем.
1. Скачиваем последнюю версию phpMyAdmin с официального сайта (на сегодняшний день последняя версия была 3.3.8).
2. Распаковываем скачанный архив в любую папку корневой директории нашего http сервера. Для условности пусть это будет папка phpmyadmin.
3. Находим в папке phpmyadmin/scripts файл create_tables.sql – это дамп таблицы phpmyadmin. Восстановим его командой от root или sudo
4. Заходим в консоль MySQL сервера и выставляем права на только что созданную базу данных phpmyadmin.
5. Правим конфигурационный файл в корне папке phpmyadmin – config.sample.inc.php.
Переименовываем его в config.inc.php, выставляем владельцем файла того от кого работает сервер http (у меня это пользователь nobody) и выставляем права на файл 600 (эти действия выполняем от root или sudo)
В самом файле config.inc.php меняем значение строк – заносим пароль для авторизации через cookie и имя пользователя, пароль для восстановленной из дампа базы phpmyadmin.
а эти строки раскомментируем
Теперь можно набирать в браузере http://localhost/phpmyadmin/ и авторизовываться.
Решение проблем при установке phpMyAdmin
1. При открытии браузером phpMyAdmin не открывается, а предлагает скачать страницу.
Решение – настроить поддержку php на http сервере. В apache модуль php подключается в httpd.conf строками,
само собой php должен быть установлен 🙂 После изменения httpd.conf перезагрузить apache сервер
2. При попытки авторизоваться возникает ошибка:
#2002 Невозможно подключиться к серверу MySQL
Решение – проверьте запущен ли MySQL сервер через консоль командой
Если пользователь нормально авторизуется, то проверьте права на файл mysql.sock. Права на файл должны быть 777.
3. После авторизации возникает ошибка:
Невозможно загрузить расширение mcrypt! Проверьте настройки PHP.
Решение – убедитесь что в вашей системе установлено приложение mcrypt и библиотека libmcrypt, а модуль php для http сервера был собран с переменной
4. После авторизации возникает ошибка:
При работе с многобайтными кодировками без установленного расширения PHP “mbstring”, phpMyAdmin не в состоянии производить корректное разбиение строк, что может привести к непредсказуемым результатам. Установите расширение PHP “mbstring”.
Решение – пересобрать модуль php для http сервера с параметром
или раскомментировать в php.ini строку
6. После авторизации в phpMyAdmin видим предупредение:
Дополнительные возможности для работы со связанными таблицами недоступны. Для определения причины нажмите здесь.
Решение – либо не установлена база данных phpMyAdmin, либо не раскомментированы строки для этой базы в файле config.inc.php. Как это делать смотрите пункты 3,4,5 из установка из исходников
Если у вас есть или были другие ошибки при установке, настройке то прошу отписываться в комментах, будем дополнять..
Установка phpMyAdmin из исходного кода в Debian 10
Для корректной работы многих проектов нужны системы управления базами данных (СУБД), например, MariaDB. Однако взаимодействовать с этой системой исключительно с помощью командной строки не всегда удобно.
Благодаря phpMyAdmin пользователи могут управлять системой MariaDB через веб-интерфейс. Данный мануал содержит пошаговые инструкции по установке и защите интерфейса phpMyAdmin в Debian 10.
Требования
Примечание: MariaDB – это разработанный сообществом форк MySQL. Хотя эти два программы очень похожи, они не вполне взаимозаменяемы. Интерфейс phpMyAdmin разработан специально для управления базами MySQL и во многих диалоговых окнах ссылается именно на MySQL. Однако MariaDB тоже будет работать с phpMyAdmin.
При использовании программ вроде phpMyAdmin всегда следует учитывать, что она:
По этим причинам (а еще из-за своей распространённости) данное PHP-приложение часто подвергается атакам. Потому ни при каких обстоятельствах его нельзя запускать в удалённой системе по HTTP-соединению. Без SSL/TLS-сертификата для веб-сервера Apache использовать phpMyAdmin очень опасно.
1: Установка phpMyAdmin и дополнительных пакетов
Прежде чем устанавливать phpMyAdmin, официальная документация рекомендует установить несколько вспомогательных PHP-расширений, которые позволяют активировать дополнительные функции и улучшить производительность.
Если вы выполнили мануал по установке стека LAMP, некоторые из этих модулей уже есть на вашем сервере – они были установлены вместе с пакетом php. Но мы рекомендуем также установить пакеты:
Обновите индекс пакетов и установите необходимые компоненты:
sudo apt update
sudo apt install php-mbstring php-zip php-gd
Теперь можно приступать к установке phpMyAdmin. На момент написания статьи phpMyAdmin не доступен в репозитории Debian по умолчанию, потому мы установим этот пакет с официального сайта проекта.
Перейдите на страницу загрузки. Найдите ссылку на последний стабильный релиз phpMyAdmin, скопируйте и загрузите ссылку, которая оканчивается на tar.gz. Эта ссылка ведет к архиву (тарболу), после распаковки которого в системе создается ряд файлов. На данный момент последним стабильным релизом является 4.9.0.1.
Примечание: На этой странице загрузки вы также увидите ссылки с метками all-languages и english. Ссылки all-languages загружают версию phpMyAdmin, в которой вы можете выбрать один из 72 языков, а english, соответственно, предоставляет вам английскую версию интерфейса.
В мануале мы используем версию all-languages для демонстрации настройки, но если вы собираетесь использовать английскую версию, просто установите пакет с меткой english.
Замените ссылку в следующей команде скопированной только что ссылкой, а затем нажмите ENTER.
Распакуйте загруженный архив:
tar xvf phpMyAdmin-4.9.0.1-all-languages.tar.gz
Вы получите ряд новых файлов и каталогов, они будут в родительском каталоге phpMyAdmin-4.9.0.1-all-languages.
Запустите следующую команду. Она переместит каталог phpMyAdmin-4.9.0.1-all-languages и все его подкаталоги в /usr/share/. В этом расположении phpMyAdmin по умолчанию надеется найти свои конфигурационные файлы. Также команда переименует каталог в phpmyadmin.
sudo mv phpMyAdmin-4.9.0.1-all-languages/ /usr/share/phpmyadmin
Итак, phpMyAdmin установлен. Но прежде чем войти и начать работу с базами данных, вам нужно выполнить базовую настройку интерфейса.
2: Ручная настройка phpMyAdmin
При установке phpMyAdmin через пакетный менеджер, как это чаще всего делается в среде Ubuntu, вы получаете программу в режиме «Zero Configuration». Это позволяет автоматически настроить интерфейс в несколько шагов. Поскольку мы установили phpMyAdmin из исходного кода, нам нужно выполнить все эти шаги вручную.
Для начала создайте новый каталог, в котором phpMyAdmin будет хранить свои временные файлы.
Передайте права на каталог пользователю www-data (это пользователь Linux, который используется веб-серверами типа Apache для работы в среде Ubuntu и Debian).
Извлеченные ранее файлы включают образец конфигурации, который можно использовать в качестве основы. Скопируйте этот файл в тот же каталог /usr/share/phpmyadmin, но переименуйте в config.inc.php:
sudo cp /usr/share/phpmyadmin/config.sample.inc.php /usr/share/phpmyadmin/config.inc.php
Откройте файл в текстовом редакторе:
sudo nano /usr/share/phpmyadmin/config.inc.php
По умолчанию phpMyAdmin использует метод аутентификации cookie, что позволяет вам входить в phpMyAdmin как любой валидный пользователь MariaDB с помощью куки. По этому методу пароль пользователя MariaDB хранится и шифруется по алгоритму Advanced Encryption Standard (AES) во временных куки.
В единичных кавычках введите строку из 32 случайных символов. Это не пароль, ее не нужно запоминать, эта строка будет использоваться алгоритмом AES только внутренне.
Примечание: Если эта строка окажется короче 32 символов, ваши зашифрованные куки будут менее надежны. Если же строка будет длиннее, ничего не изменится.
Вы можете сгенерировать случайную строку с помощью инструмента pwgen. Чтобы установить его, введите:
sudo apt install pwgen
По умолчанию pwgen создает легко запоминающиеся, но не очень надежные пароли. Но с помощью флага –s мы можем создать совершенно случайную последовательность, которую сложно запомнить. Обратите внимание на два последних аргумента: 32 задает длину случайной строки, а 1 – количество случайных строк, которое нужно сгенерировать.
Затем найдите комментарий /* User used to manipulate with storage */. В этом разделе содержатся некоторые директивы, которые определяют пользователя базы данных MariaDB по имени pma, который выполняет определенные административные задачи в phpMyAdmin. Согласно официальной документации, эта специальная учетная запись не нужна в тех случаях, когда доступ к phpMyAdmin имеет только один пользователь, но ее рекомендуется настроить в многопользовательских сценариях.
Раскомментируйте директивы controluser и controlpass, удалив косую черту в начале строки. Затем обновите директиву controlpass, указав в ней надежный пароль. Если вы этого не сделаете, программа будет использовать пароль по умолчанию, и неизвестные пользователи смогут легко получить доступ к вашей базе данных через интерфейс phpMyAdmin.
После внесения этих изменений этот раздел файла будет выглядеть следующим образом:
Ниже вы найдете еще один раздел, с комментарием /* Storage database and tables */. Этот раздел содержит ряд директив, определяющих хранилище конфигурации phpMyAdmin, базу данных и несколько таблиц, используемых pma. Эти таблицы включают в phpMyAdmin ряд функций, в том числе вкладки, комментарии, генерацию PDF и многое другое.
Раскомментируйте каждую строку в этом разделе, удалив косую черту в начале, чтобы раздел выглядел следующим образом:
Эти таблицы еще не существуют, но скоро мы их создадим.
Перейдите в конец файла и добавьте следующую строку. Это настроит phpMyAdmin на использование каталога /var/lib/phpmyadmin/tmp, который вы создали ранее, в качестве своего временного каталога. phpMyAdmin будет использовать этот временный каталог для кэша шаблонов, который позволяет быстрее загружать страницы:
Сохраните и закройте файл (CTRL + X, Y, затем ENTER).
Затем вам нужно создать базу данных и таблицы конфигурации phpMyAdmin. Когда вы установили phpMyAdmin, вместе с тем вы установили файл create_tables.sql. Этот файл SQL содержит все команды, необходимые для создания базы данных хранилища конфигурации и таблиц, которые нужны phpMyAdmin для того чтобы правильно функционировать.
Выполните следующую команду, чтобы использовать файл create_tables.sql для создания базы данных и таблиц конфигурации:
После этого вам нужно создать администратора pma. Откройте командную строку MariaDB:
В командной строке выполните следующую команду, чтобы создать пользователя pma и предоставить ему соответствующие права. Обязательно измените пароль – он должен соответствовать паролю, который вы определили в файле config.inc.php:
GRANT SELECT, INSERT, UPDATE, DELETE ON phpmyadmin.* TO ‘pma’@’localhost’ IDENTIFIED BY ‘password’;
Если вы еще не сделали этого, вам также следует создать обычного пользователя MariaDB для управления базами данных через phpMyAdmin: входить в систему рекомендуется через другую учетную запись, не через пользователя pma. С помощью этой команды вы можете создать пользователя, который имеет доступ ко всем таблицам в базе данных, а также права добавлять, изменять и удалять привилегии пользователей. Какие бы привилегии вы ни делегировали этому пользователю, обязательно выберите для него надежный пароль:
GRANT ALL PRIVILEGES ON *.* TO ‘8host’@’localhost’ IDENTIFIED BY ‘password’ WITH GRANT OPTION;
После этого выйдите из оболочки MariaDB:
3: Настройка Apache для обслуживания phpMyAdmin
При установке phpMyAdmin из репозитория по умолчанию процесс установки автоматически создает файл конфигурации для Apache и помещает его в каталог /etc/apache2/conf-enabled/. Поскольку мы установили phpMyAdmin из исходного кода, нам нужно создать и включить этот файл вручную.
Создайте файл phpmyadmin.conf в каталоге /etc/apache2/conf-available/:
sudo nano /etc/apache2/conf-available/phpmyadmin.conf
Добавьте в него такое содержимое:
Это стандартный файл конфигурации phpMyAdmin для Apache, который можно найти в установках Ubuntu – но он хорошо подходит и для Debian.
Сохраните и закройте файл, а затем включите его:
sudo a2enconf phpmyadmin.conf
Затем перезагрузите сервис apache2, чтобы изменения вступили в силу:
sudo systemctl reload apache2
После этого можно получить доступ к странице входа в phpMyAdmin, для этого откройте следующий URL-адрес в веб-браузере:
Чтобы получить доступ к интерфейсу, используйте имя и пароль вашего пользователя MariaDB.
Теперь, когда вы настроили установку phpMyAdmin и можете работать с ней в браузере, пора защитить phpMyAdmin.
4: Защита phpMyAdmin
Из-за своей распространённости PhpMyAdmin часто подвергается атакам хакеров. На данном этапе необходимо обеспечить интерфейсу достаточный уровень защиты для предотвращения вредоносного использования.
sudo nano /etc/apache2/conf-available/phpmyadmin.conf
В раздел нужно добавить параметр AllowOverride All:
Сохраните и закройте файл.
sudo systemctl restart apache2
Для корректной работы необходимо создать такой файл в каталоге приложения. Для этого введите:
sudo nano /usr/share/phpmyadmin/.htaccess
AuthType Basic
AuthName «Restricted Files»
AuthUserFile /etc/phpmyadmin/.htpasswd
Require valid-user
Рассмотрим эти строки подробнее:
Сохраните и закройте файл.
Файл с паролями нужно создать в каталоге, заданном в директиве AuthUserFile, в данном случае это /etc/phpmyadmin/.htpasswd.
Чтобы добавить в файл еще одного пользователя, используйте вышеприведенную команду без флага –с:
sudo htpasswd /etc/phpmyadmin/.htpasswd additionaluser
Теперь при входе в подкаталог phpMyAdmin будут запрашиваться учетные данные пользователя:
https://domain_name_or_IP/phpmyadmin
The server http://111.111.11.111:22 requires a username and password. The server says: Restricted Files.
User Name:
Password:
Только после аутентификации пользователь сможет получить доступ к странице авторизации phpMyAdmin. Это установит дополнительный уровень безопасности, который защитит веб-интерфейс phpMyAdmin от атак методом подбора паролей.
Заключение
Теперь phpMyAdmin установлен, запущен и надежно защищен от злоумышленников. При помощи этого интерфейса можно быстро и легко создавать базы данных, пользователей, таблицы и т.п., а также выполнять такие рутинные задачи как удаление и редактирование структур и данных.



