Установка и работа с phpMyAdmin. Установка и настройка phpMyAdmin: пошаговая инструкция и рекомендации

Каждая новая установка CMS Joomla требует создание новой базы данных. Данная база данных будет хранить данные, такие как статьи/материалы, меню, категории и пользователи. Эти данные необходимы для управления сайтом на Joomla!

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

В этом материале будет рассмотрен наиболее распространенный тип базы данных, используемых при установке Joomla, а именно база данных MySQL. Мы рассмотрим два варианта создания базы данных для Joomla. Первый способ будет заключатся в создании базы данных на локальном сервере, а второй – в создании БД на хостинге, при этом акцент будет делаться на использование DirectAdmin – панель управления хостингом. Но другие панели управления хостингом должны иметь аналогичные шаги создания базы данных.

Создание базы данных MySQL на локальном сервере

Для того чтобы создать базу данных на локально сервере, его нужно сначала установить. Поэтому скачиваем локальный сервер – Denwer [Скачать ] и устанавливаем его. Инструкция по установке Denwer .

После успешной установки локального сервера можно приступать к созданию базы данных для установки Joomla! Для того чтобы попасть в интерфейс управления базами данных, необходимо запустить локальный сервер Denwer (если не запущен) и в адресной строке браузера ввести: http://localhost/tools/phpmyadmin . В открывшимся окне вы увидите веб-интерфейс «phpMyAdmin». Теперь можно приступать непосредственно к созданию базы данных.

База данных и пользователь к ней созданы, теперь можно приступать к установке Joomla на локальном сервере.

Создание базы данных MySQL на хостинге

Как говорилось выше, создание базы данных на хостинге будет проводится на примере панели управления DirectAdmin. Но все этапы создания будут аналогичны любой панели управления хостингом.

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

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


Теперь вы можете устанавливать Joomla 2.5 (или устанавливать Joomla 3.1 ) прямо на хостинге и на определенном этапе установки вы должны будете ввести данные, которые необходимо было записать (имя базы данных, имя пользователя, пароль пользователя и хост).

Любой веб-разработчик знает, что для работы практически каждого сайта необходима база данных. Она позволяет хранить информацию, управлять ею и получать в нужный момент. Чтобы все перечисленное можно было использовать в более удобной форме, группа энтузиастов решила создать продукт, совмещающий удобство и функциональность при работе с СУБД. Его название — phpMyAdmin. Как правило, он уже имеется на многих хостингах. Поэтому в статье речь пойдёт о том, как провести установку и настройку phpMyAdmin на

Подготовка

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

Каждый компонент можно установить вручную по отдельности, а можно сразу все. Для Linux есть связка LAMP, для Windows — "Денвер" или OpenServer. Установка всего программного обеспечения и настройка его по отдельности позволит изучить состав и структуру работы всего сервера в целом. Если же время не позволяет разбираться с внутренним строением, проще и удобнее сразу поставить сборку.

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

Пакет имеется в стандартных репозиториях "Убунту", поэтому достаточно в терминале набрать команду:

sudo apt-get install phpMyAdmin.

В процессе будет предложено пройти по этапам настройки phpMyAdmin. На первом нужно выбрать веб-сервер, который намечено использовать для запуска. В данном случае это — apache2.

В следующем окне будет предложено выполнить конфигурацию базы данных для phpMyAdmin. Стоит согласиться. Система запросит пароль для MySQL. А далее и для phpMyAdmin.

После этого в папке /etc/apache2/conf-enabled/ появится файл конфигурации.

Осталось установить пару деталей и активировать их. Можно использовать команды:

sudo apt-get install php-mbstring php-gettext.

А их запуск выполняется так:

sudo phpenmod mcrypt;

sudo phpenmod mbstring.

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

sudo systemctl restart apache2.

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

Запуск и конфигурирование

Чтобы попасть в недра настроек phpMyAdmin нужно открыть любой браузер и в адресной строке набрать:

созданный домен/phpmyadmin.

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

Панель управления

Интерфейс приложения разделен на логические блоки, объединённые по общему принципу.

Слева находится панель для быстрого перехода между базами и таблицами. Здесь же можно создать новый экземпляр того или иного формата.

Верхнее меню содержит пункты для перехода к настройкам таблиц, а также к дополнительному функционалу:

  • базы данных . Практически дублирует меню слева, то есть содержит перечень имеющихся баз;
  • SQL . Очень интересный пункт для тех, кто знает, как правильно составлять запросы, и активно пользуется ими. Можно вручную выполнить выборку, удаление, сортировку и прочие функции SQL;
  • состояние . Текущее положение в базах. Их общий объём, трафик, количество принятых и отправленных данных;
  • учётные записи пользователей . Все сохранённые данные о пользователях, с указанием их привилегий, адресах и паролях;
  • экспорт и импорт . Очень удобные функции для осуществления обмена между базой и другим программным обеспечением. Например, для обновления сайта вручную, если возникла такая необходимость. К тому же это очень удобный инструмент для создания резервной копии важных данных, если автоматически такая возможность отсутствует;
  • настройки . Множество различных параметров, так или иначе связанных с работой phpMyAdmin, баз, запросов и многого другого;
  • репликация . Связь с другими серверами для одновременного изменения на репликах — то есть повторных экземплярах текущего сервера баз данных;
  • переменные . Как понятно из названия, раздел содержит значения для внутренних нужд сервера и системы. Без надобности ими, как правило, не пользуются;
  • кодировки . Показывает все имеющиеся в системе варианты отображения шрифтов;
  • сведения об используемых в phpMyAdmin видах хранения данных;
  • расширения . Перечень дополнений phpMyAdmin, увеличивающих функционал системы.

Общие настройки прямо по центру позволяют сменить пароль или установить используемую кодировку текста.

Параметры отображения помогут изменить язык, тему, размер шрифта и прочие настройки внешнего вида системы.

Справа находится информационная панель со сведениями о сервере баз данных и веб-сервере, а также несколько ссылок для справки по phpMyAdmin.

К сожалению, приложение часто используют злоумышленники для получения несанкционированного доступа, поэтому нужно знать, как оградиться от этого.

Безопасность

Самое первое, что предстоит сделать, — использовать файлы веб-сервера Apache htaccess. Для начала нужно сообщить apache, что будет применяться специальный файл для настройки phpMyAdmin.

Для этого надо настроить файл конфигурации, расположенный по адресу /etc/apache2/conf-available/phpmyadmin.conf.

Нужно добавить особую директиву AllowOverride All. После изменения и сохранения файла необходимо снова перезапустить веб-сервер.

Теперь для настройки phpMyAdmin понадобится сам файл, в котором и будут определены правила доступа в панель управления. Он должен называться.htaccess и размещаться по пути /usr/share/phpmyadmin.

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

AuthName «Restricted Files»

AuthUserFile /etc/phpmyadmin/.htpasswd

Require valid-user.

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

  • Первая строка отвечает за характер авторизации. Параметр «базовый» означает, что войти можно будет по логину и паролю.
  • Вторая определяет, какой текст будет показан вместо приветствия.
  • В третьей строке указываются файл, в котором будет храниться пароль.
  • Четвёртая сообщает системе, что только аутентифицированные пользователи могут сюда попасть.

Пароль

С созданием файла для пароля при настройке phpMyAdmin придется немного повозиться.

Для начала нужно установить утилиту htpasswd. Она имеется в репозиториях "Убунту", поэтому достаточно выполнить команду в терминале:

sudo apt-get install apache2-utils.

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

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

Она создаст нового пользователя и предложит указать пароль для него.

Теперь доступ надёжно защищен. При попытке войти в административную панель phpMyAdmin пользователя откроется дополнительное окно для получения прав просмотра и изменения настроек.

CentOS

Настройка phpMyAdmin в CentOS, на самом деле, мало чем отличается. Алгоритм действий будет практически таким же. Разве что команда установки немного другая:

yum install -y phpmyadmin

Все дальнейшие настройки и манипуляции актуальны как для Ubuntu, так и для CentOS.

Среда Windows

Для операционной системы Windows имеется несколько готовых решений по созданию сервера с имеющимся комплектом технологий. Например OpenServer. Он уже содержит на «борту» установленный phpMyAdmin. Найти его можно в контекстном меню сервера, в пункте «Дополнительно».

Настройка MySQL и phpMyAdmin в OpenServer происходит с помощью различных готовых меню и окон, что несомненно удобней, чем ручной ввод команд.

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

  • во избежание падений сервера стоит использовать самые последние версии программного обеспечения;
  • на хостинге, скорее всего, уже установлен phpMyAdmin, но все же его безопасность можно настроить через файлы htaccess;
  • стоит внимательно относиться к выбору пароля. Зачастую его восстановление занимает гораздо больше времени, чем продуманный подход к его созданию;
  • использование готовых сборок позволяет реализовать быстрое развёртывание сервера со всем необходимым, но не всегда дает возможность гибко его настроить и понять тонкости работы.

В заключение

PhpMyAdmin используется на многих сервисах и сайтах в интернете. Это можно объяснить простотой настройки и доступа к базе данных. А также наличием большого количества дополнительных функции и возможностей. Проект постоянно развивается и подстраивается под новые решения и технологии.

— локального сервера для Linux. К сожалению, средство администрирования баз данных phpMyAdmin не входит в набор инструментов LAMP, поэтому устанавливается отдельно. Из этой статьи вы узнаете, как пользоваться phpMyAdmin.

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

Очень часто phpMyAdmin (PMA) встречается на платных хостингах и используется для создания и администрирования баз данных (БД) сайтов. Устанавливать ее на платный хостинг не надо — там уже все сделано до вас. Чаще всего вы будете сталкиваться с установкой PMA на свой компьютер для администрирования баз данных локального сервера. В качестве примера я рассмотрю установку phpMyAdmin на Ubuntu — один из самых популярных дистрибутивов Linux.

Откройте терминал и введите следующую команду:

sudo apt- get install phpmyadmin

После этого введите пароль администратора и согласитесь с продолжением установки.

Выберете веб-сервер, который автоматически будет настроен для запуска PMA. В нашем случае это apache2.

Соглашайтесь настроить БД с помощью dbconfig-common.

Введите пароль администратора MySQL.

Задайте пароль для регистрации PMA на сервере баз данных и далее подтвердить его. После окончания установки, phpMyAdmin будет доступна по адресу http://localhost/phpmyadmin .

phpMyAdmin не работает

Если перейдя по этому адрес, вы увидите страницу с ошибкой, то можно сделать следующее.

  • введите в терминале команду:
    sudo ln - s / etc/ phpmyadmin/ apache. conf / etc/ apache2/ conf. d
  • перезагрузите сервер apache с помощью команды:
    sudo / etc/ init. d/ apache2 restart
  • повторно зайдите по адресу http://localhost/phpmyadmin , теперь вы должны увидеть страницу входа в панель администратора phpMyAdmin.

Пользователь будет root , а пароль вы задали при установке .

Создание новой базы данных

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

Что в первую очередь пригодится? Конечно, умение создавать БД для будущего сайта. Для этого перейдите на вкладку Базы данных .

Достаточно ввести название новой БД и кликнуть на кнопку «Создать» — все остальное phpMyAdmin сделает автоматически.

Появится сообщение об успешном создании БД и она добавится в список ниже.

Добавление нового пользователя БД

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

Для этого кликните на надписи «Проверить привилегии». Вас перебросит на страницу «Пользователи с правами доступа к БД», на которой следует кликнуть на «Добавить нового пользователя».

В разделе «Информация учетной записи» укажите имя пользователя (английскими буквами), хост (на локальном сервере — localhost) и пароль.

Чуть ниже необходимо задать привилегии для нового пользователя. На локальном сервере можно не задумываясь отметить все пункты галочками. После этого следует нажать на кнопку «ОК» в самом низу и новый пользователь будет создан.

Импорт и экспорт баз данных

Для создания бэкапа (резервной копии) базы данных служит раздел «Экспорт».

В случае «быстрого» способа экспорта будут созданы бэкапы сразу всех доступных баз данных в формате, выбранном ниже.

phpMyAdmin (PMA) - абсолютно бесплатный клиент для работы с базами данных MySQL. В данном уроке, мы расскажем как его установить, и рассмотрим несколько распространённых сценариев работы для администрировании баз данных. находится онлайн демо PMA.

Вдобавок к обеспечению визуального графического интерфейса для работы с базами данных мне также нравится возможность использования команд для выполнения SQL операций непосредственно из браузера без необходимости входа на сервер через SSH. Например, некоторые Wi-Fi соединения и мобильные источники регулярно прерывают устойчивые SSH сессии, делая работу с базами данных довольно проблематичной.

Установка phpMyAdmin

Нет ничего проще, чем установить PMA на Linux. Я опишу как сделать это на Ubuntu 14.x в Digital Ocean . Зайдите на сервер через SSH.

apt-get install phpmyadmin

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

Если вы ограничите доступ MySQL только через localhost (что вы должны сделать), то для хакера база будет вне зоны досягаемости. Конечно он может попытаться подключиться через SSH или осуществит атаку посредством SQL инъекций, но напрямую атаковать базу данных не сможет. Как только вы установите PMA, то данный инструмент становится потенциально уязвим для атак, поэтому меры предосторожности не повредят.

Есть несколько мер, которые я бы посоветовал при конфигурировании PMA.

  1. Используйте очень надежные пароли для всех учетных записей MySQL, особенно для пользователя root. Например, 25 символов для пароля.
  2. Для каждого из сайтов, используйте различные учетные записи и привилегии. Таким образом, если один пароль будет украден, пострадает только одна база данных.
  3. Меняйте стандартный URL доступа к PMA. Таким образом люди не смогут достучаться до него по адресу http://yourblog.com/phpmyadmin. Хотя данная мера не очень эффективна, она всё же увеличивает безопасность.

Добваляем алиас в файл apache.conf:

nano /etc/phpmyadmin/apache.conf

Alias /myobscuredpma /usr/share/phpmyadmin

Перезагружаем apache:

service apache2 reload

Теперь PMA будет доступен по адресу http://yourblog.com/myobscuredpma.

Если вам необходимо изменить пароль вашего phpMyAdmin, измените содержимое файла config-db.php:

nano /etc/phpmyadmin/config-db.php

4. Настройте веб-аутентификацию для доступа к PMA. После этого вам потребуется ввести дополнительный пароль:

Для настройки ограничений пользователя apache следуйте этим шагам:

Установите htpasswd из пакета apache2-utils:

apt-get install apache2-utils

Создайте директорию для хранения ваших паролей:

mkdir /etc/htpasswd

Добавьте в htaccess поддержку для PMA:

Options FollowSymLinks DirectoryIndex index.php AllowOverride All

Настраиваем дополнительную аутентификацию:

nano /usr/share/phpmyadmin/.htaccess

AuthType Basic AuthName "Login Required for Access" AuthUserFile /etc/htpasswd/.htpasswd Require valid-user

Укажите пароль:

htpasswd -c /etc/htpasswd/.htpasswd username

И перезапустите Apache:

service apache2 restart

Теперь для доступа к PMA вам необходимо будет ввести ещё один пароль, как показано выше.

Использование phpMyAdmin для веб-разработки

1. Создание и удаление баз данных

На мой взгляд PMA особо полезен на стадиях разработки и тестирования, когда в любой момент смогу сбросить базу или сделать откат какой-то операции.

Без PMA мне бы пришлось заходить на мой сервер через SSH, подключаться к MySQL, а затем запускать запрос:

Create database myapp; grant all privileges on myapp_database.* TO "your-mysql-username"@"localhost" identified by "your-mysql-password"; flush privileges;

PMA позволяет нам запускать любой запрос через удобный визуальный интерфейс. Нажмите вкладку SQL и вставьте вышеуказанные SQL код. Затем кликните Go чтобы создать базу данных.

Так же для создания базы данных можите напрямую воспользоваться визуальный интерфейсом:

Таким же образом, вы можете добавлять пользователей и назначать привилегии. Перейдите на вкладку “Привилегии”:

Кликните “Добавить пользователя” и назначьте желаемые привилегии для базы данных:

Для самого обычного аккаунта будет достаточно выделить боксы в разделах “данные” и “структура”.

Чтобы удалить базу данных откройте меню, выберите базу, нажмите “удалить”:

2. Резервное копирование базы данных

Перед какими-то важными операциями неплохо было бы осуществить резервное копирование базы. Если что-то пойдет не так вы всегда сможете восстановить базу из резервной копии.

Щелкните на базу данных, перейдите на вкладку “Экспорт” и выберите “Custom”.

Выберите пункт «Add Drop Table / View / Procedure / Function / Event»:

Когда нажмёте Go, PMA создаст резервную копию всей вашей базы данных и отдаст её на скачку. Если настройки тайм-аута в вашем Apache PHP не настроены должным образом, некоторые загрузки крупных файлов могут не завершиться или прерваться. Измените настройки в php.ini .

3. Тестирование запросов

PMA прекрасно подходит для тестирования SQL запросов. Во время разработки одного проекта, мне было необходимо изучить поведение и протестировать ряд сложных запросов геолокации, найти ближайшие к моему адресу соседства.

Выберите ваше базу данных, нажмите Query. Вставьте или отредактируйте сложные SQL запросы и протестируйте их напрямую через PMA:

После шлифовки запроса, его легче применить в рамках шаблона ActiveRecord. Как тут:

$criteria = new CDbCriteria; $criteria->together=true; $criteria->having= "distance < 100"; $criteria->order = "distance ASC"; $criteria->with = array("place_geometry"=>array("select"=>"place_id,center,".new CDbExpression("(3959 * acos(cos(radians(".$lat.")) * cos(radians(X(center))) * cos(radians(Y(center)) - radians(".$lon.")) + sin(radians(".$lat.")) * sin(radians(X(center))))) as distance"))); $dataProvider = new CActiveDataProvider(Place::model()->active()->includesMember($id), array("criteria" => $criteria, "pagination" => array("pageSize" => 10,),));

4. Быстрое изменение данных

Если вы разработчик, то у вас наверняка возникала ситуация что при работе с БД выскакивали ошибки из-за отсутствия или неправильного значения в какой-то из ячеек таблицы. Не так ли?

PMA предоставляет нам отличную возможность изменения значения ячеек непосредственно из отображения таблицы. Откройте базу данных и выберите таблицу. Дважды кликните на колонке чтобы ввести значение. После окончания изменений нажмите “Enter”:

5. Актуализация базы данных на основе миграций

Если вы используете фрэймворк (как Yii), то наверняка в вашем арсенале есть инструмент миграции. Миграции облегчает поэтапное изменение БД в процессе разработки. Однако при тестирование могут возникнуть проблемы.

Чаще всего я наталкиваюсь на ошибки миграции из-за лишних (не удалённых) индексов, внешних ключей или таблиц. В таком случае я использую PMA для удаления таблицы и нежелательных индексов.

В PMA, выберите базу данных, кликните не вкладку SQL и выполните запрос. Вот несколько примеров:

Надеемся, что данная статья была для вас полезной.

.
3. Теперь Вы должны создать конфигурационный файл (config.inc.php). Создание конфигурационного файла - необходимое условие прежде всего для запуска phpMyAdmin, а также необходимо для задания некоторых возможностей. Эта задача может быть выполнена двумя разными способами. Традиционно, пользователи могут вручную отредактировать копию файла config.inc.php. Кроме этого, пользователи, предпочитающие графическую инсталляцию, могут воспользоваться мастером установки (скриптом инсталляции).

  • Для того, чтобы вручную создать конфигурационный файл, достаточно простейшего текстового редактора, с помощью которого нужно создать файл config.inc.php. Для упрощения задачи, Вы можете скопировать в текстовый редактор содержимое файла config.sample.inc.php - образца рабочей конфигурации, содержащей минимальное количество конфигурационных переменных.

    Созданный файл необходимо поместить в главную директорию phpMyAdmin (ту, которая содержит index.php). phpMyAdmin сперва загружает libraries/config.default.php, а затем подменяет значения прописанных в нем переменных теми, что находит в config.inc.php. Если значение по умолчанию (тех переменных, что определены в libraries/config.default.php) Вас устраивает, тогда нет необходимости включать его в config.inc.php. Для запуска phpMyAdmin вам понадобятся как минимум несколько директив, простейшая конфигурация может выглядеть так:

    $cfg["blowfish_secret"] = "ba17c1ec07d65003"; // use here a value of your choice
    $i=0;
    $i++;
    $cfg["Servers"][$i]["auth_type"] = "cookie";
    ?>

    Или, если вы не хотите вводить каждый раз логин/пароль (данная конфигурация не рекомендуется из соображений безопасности), конфигурационный файл может выглядеть так:
  • Вместо ручного редактирования файла config.inc.php, Вы можете использовать скрипт установки. Прежде всего, вам необходимо вручную создать в главной директории phpMyAdmin папку "config". Это - мера безопасности. При работе под ОС Linux/Unix Вы можете использовать следующие команды:

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

    На других платформах, просто создайте директорию и убедитесь, что Ваш веб-сервер имеет права на чтение и запись в неё. FAQ 1.26 может помочь в этом случае.

    Затем, откройте в браузере scripts/setup.php. Помните, что изменения не будут сохранены на диск до тех пор, пока не будет нажата кнопка "Save" в блоке "Configuration". Если все хорошо, то скрипт сохранит новый config.inc.php в директорию config/, но если веб-сервер не имеет необходимых прав, Вы можете увидеть сообщение об ошибке "Cannot load or save configuration". В таком случае, убедитесь, что директория config/ создана и имеет необходимые права, либо воспользуйтесь ссылкой "Download" для сохранения конфигурационного файла на локальный диск и последующей закачки (например, через FTP) на сервер.

    Как только файл был сохранен, необходимо переместить его из директории config/ в главную директорию phpMyAdmin и в целях безопасности сбросить права на него:

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

4. Если Вы собираетесь использовать "config" аутентификацию (auth_type), необходимо защитить директорию в которую был установлен phpMyAdmin от несанкционированного доступа, потому что данный режим позволяет любому пользователю получить доступ к phpMyAdmin без предварительного ввода логина/пароля. Рекомендуются альтернативные методы аутентификации, например, HTTP-AUTH (с помощью.htaccess файла), либо использованием одного из двух других методов аутентификации: cookie или http. См. подраздел FAQ "Мультипользовательская установка" для дополнительной информации, особенно обратите внимание на FAQ 4.4 .
5. Откройте главную директорию phpMyAdmin в вашем браузере. Должно появиться окно приветствия phpMyAdmin и Ваши базы данных, или окно ввода логина, в случае использования режима HTTP- или cookie-аутентификации. 6. Вы должны запретить доступ к субдиректории./libraries средствами вашего веб-сервера. В случае использования веб-сервера Apache для защиты директории Вы можете использовать файл.htaccess. При использовании других веб-серверов вы должны запретить доступ к директории./libraries самостоятельно. Подобная конфигурирование - превентивная мера на случай обнаружения уязвимостей: возможного раскрытия пути (path exposure) и межсайтового выполнения сценариев (Cross-site Scripting, XSS).

Linked-tables infrastructure (Инфраструктура связанных таблиц)

Для использования многих опций (закладок, комментариев, SQL-истории, PDF-схем, преобразования содержимого полей, и т.д.) необходимо создать набор специальных таблиц. Эти таблицы могут находиться как в Вашей базе данных, так и в центральной базе при многопользовательской системе (в этом случае данная БД может быть доступна только для пользователя controluser, соответственно, другие пользователи не имеют прав на неё).

Зайдите в директорию scripts/ , здесь вы найдете файл create_tables.sql . (Если используете Windows сервер, обратите особое внимание на FAQ 1.24).

Если у Вас установлена версия MySQL сервера 4.1.2 или более позднее, используйте вместо вышеуказанного файла create_tables_mysql_4_1_2+.sql , для новой инсталляции.

Если у вас уже есть готовая инфраструктура и вы обновляете MySQL до версии 4.1.2 или выше, используйте upgrade_tables_mysql_4_1_2+.sql .

Вы можете использовать phpMyAdmin для создания баз данных и таблиц, для этого необходимо обладать администраторскими привилегиями на создание баз данных и таблиц, в связи с чем скрипту может понадобиться небольшая настройка (указание названия базы данных).

После импорта create_tables.sql , Вы должны определить названия таблиц в файле config.inc.php , с помощью директив, описанных в разделе "Конфигурирование" . Кроме этого необходимо обладать правами controluser на данные таблицы (см. ниже, раздел "Использование режима аутентификации").

Обновление старой версии

Просто скопируйте конфигурационный файл ./config.inc.php от предыдущей версии в директорию куда был распакован phpMyAdmin. Конфигурационные файлы из очень старых версий (2.3.0 or older) могут потребовать некоторых настроек, т.к. некоторые опции были изменены или удалены.

Если Вы обновили свой MySQL-сервер с версии старше, чем 4.1.2 до версии 4.1.2 или новее,и используете инфраструктуру связанных таблиц, тогда необходимо запустить SQL-скрипт, который находится в scripts/upgrade_tables_mysql_4_1_2+.sql.

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

При использовании "HTTP" и "cookie" режимов phpMyAdmin, рекомендуется завести пользователя (controluser), который должен обладать правами только на выборку (SELECT) из следующих таблиц: mysql.user (все столбцы за исключением "Password"), mysql.db (все столбцы), mysql.host (все столбцы) и mysql.tables_priv (все столбцы за исключением "Grantor" и "Timestamp").

GRANT USAGE ON mysql.* TO "pma"@"localhost" IDENTIFIED BY "pmapass";
GRANT SELECT (
Host, User, Select_priv, Insert_priv, Update_priv, Delete_priv,
Create_priv, Drop_priv, Reload_priv, Shutdown_priv, Process_priv,
File_priv, Grant_priv, References_priv, Index_priv, Alter_priv,
Show_db_priv, Super_priv, Create_tmp_table_priv, Lock_tables_priv,
Execute_priv, Repl_slave_priv, Repl_client_priv
) ON mysql.user TO "pma"@"localhost";
GRANT SELECT ON mysql.db TO "pma"@"localhost";
GRANT SELECT ON mysql.host TO "pma"@"localhost";
GRANT SELECT (Host, Db, User, Table_name, Table_priv, Column_priv)
ON mysql.tables_priv TO "pma"@"localhost";

Необходимо установить настройки для controluser в файле config.inc.php в следующих секциях: $cfg["Servers"][$i]["controluser"] и $cfg["Servers"][$i]["controlpass"] .

В нижеприведенном примере, в обучающих целях используются следующие значения для: "controluser" - "pma", "pmapass" - "controlpass". Но на практике используйте другие значения в своих файлах!

Разумеется, localhost в случае необходимости нужно заменить на реальное имя веб-сервера.

Если вы используете старую версию MySQL (ниже 4.0.2), замените первый запрос GRANT SELECT следующим образом:

GRANT SELECT (Host, User, Select_priv, Insert_priv, Update_priv, Delete_priv, Create_priv, Drop_priv, Reload_priv, Shutdown_priv, Process_priv, File_priv, Grant_priv, References_priv, Index_priv, Alter_priv) ON mysql.user TO "pma"@"localhost";

И если Вы хотите использовать возможности закладок и связей:

GRANT SELECT, INSERT, UPDATE, DELETE ON .* TO "pma"@"localhost";

(конечно, подразумевается, что должна быть настроена инфраструктура связанных таблиц).

  • Разумеется, пользователь должен разрешить браузеру использовать куки. Теперь это необходимое требование для всех методов аутентификации
  • В этом режиме, после прохождения первичной идентификации phpMyAdmin создает на компьютере пользователя cookie-файл, содержащий логин и пароль пользователя, который будет автоматически подставляться при следующих сеансах.
  • При использовании данного режима пользователь может завершить сеанс phpMyAdmin и авторизоваться под другим именем.
  • Если вы собираетесь проходить процедуру идентификации на произвольном сервере обратите внимание на директиву $cfg["AllowArbitraryServer"] .
  • Как указано в секции "Технические требования" , наличие PHP библиотеки mcrypt на сервере способно ускорить фазу авторизации, но наличие её не обязательно.
  • "config" - аутентификация