Включаем дополнительные возможности PhpMyAdmin

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

Настройка

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

The phpMyAdmin configuration storage is not completely configured, some extended features have been deactivated. To find out why click here.
(Хранилище конфигураций phpMyAdmin не настроено должным образом, некоторые возможности отключены. Чтобы узнать почему, нажмите здесь)

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

$cfg['Servers'][$i]['controluser'] = 'pma';
$cfg['Servers'][$i]['controlpass'] = 'pmapass';
$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]['pdf_pages'] = 'pma__pdf_pages';
$cfg['Servers'][$i]['table_coords'] = 'pma__table_coords';
$cfg['Servers'][$i]['column_info'] = 'pma__column_info';
$cfg['Servers'][$i]['history'] = 'pma__history';
$cfg['Servers'][$i]['recent'] = 'pma__recent';
$cfg['Servers'][$i]['table_uiprefs'] = 'pma__table_uiprefs';
$cfg['Servers'][$i]['users'] = 'pma__users';
$cfg['Servers'][$i]['usergroups'] = 'pma__usergroups';
$cfg['Servers'][$i]['navigationhiding'] = 'pma__navigationhiding';
$cfg['Servers'][$i]['tracking'] = 'pma__tracking';
$cfg['Servers'][$i]['userconfig'] = 'pma__userconfig';
$cfg['Servers'][$i]['designer_coords'] = 'pma__designer_coords';
$cfg['Servers'][$i]['favorite'] = ‘pma__favorite’;
$cfg['Servers'][$i]['savedsearches'] = 'pma__savedsearches';

Смените имя пользователя, пароль и имя базы данных по вашему собственному усмотрению. Остальные конфигурационные значения - это имена таблиц. Если оставить их пустыми, то вы отключите соответствующие им возможности. Но вообще, я бы рекомендовал оставить эти названия как есть. В зависимости от версии PhpMyAdmin не все значения будут доступны по умолчанию. В данном случае я использовал версию PhpMyAdmin 4.2.x.

Когда вы закончите с конфигом, нужно будет создать базу данных. Создайте базу данных с именем, которое вы указали в вашем конфигурационном файле. Далее поищите файл с названием create_tables.sql на вашей машине. Скорее всего, данный файл будет находиться в корневой директории установленного PhpMyAdmin, или в поддиректории scripts. Если у вас Linux, то расположение будет следущим /usr/share/phpMyAdmin/examples/ или /usr/share/doc/phpmyadmin/scripts/. Запустите этот файл в рамках созданной базы данных. Если вы меняли имена таблиц в вышеприведенном конфиге, не забудьте поменять их также и в базе данных.

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

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';

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

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

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

Закладки

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

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

Связи

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

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

Информация о таблице

Конечно, видеть список со всеми возможными значениями для внешнего ключа хорошо. Но было бы еще лучше, если бы нам показывался конкретный столбец вместо ID. Чтобы этого добиться, нужно включить able_info. Перейдите к основной таблице, перейдите на вкладку “Структура”, и кликните на ссылку просмотра связи. Если вы прокрутите страницу до низу, то увидите, какой столбец будет отображаться по этому ключу.

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

Страницы PDF

Связи между таблицами можно экспортировать в PDF. Для этого в конфиге нужно активировать pdf_pages, table_coords и relation. Следующим шагом откройте базу данных, которую вы хотите экспортировать в PDF. Кликните на вкладку “Операции”. Далее кликните по ссылке “Редактировать или экспортировать схему связей”. Заполните все поля и нажмите “Отправить”. Если вы заполнили форму - то у вас появится PDF файл со всеми необходимыми данными.

Информация о столбцах

С помощью опции column info вы можете добавлять комментарии к названиям столбцов. Это может быть полезным, когда вы хотите донести до других людей, что это за столбец, и какие данные в нем хранятся. Сделать это можно, изменив данные столбца. Вы можете заметить, что к столбцу был добавлен новый комментарий. Если вы введете комментарий, то он появится прямо под именем столбца.

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

История

Если включить history, то все запросы, выполняемые через PhpMyAdmin будут сохраняться в вашей истории, до тех пор пока вы не завершите сеанс, или не закроете браузер. Историю можно просмотреть, вызвав диалоговое окно “Запрос”, и нажав кнопку “История SQL”

Недавние

На навигационной панели вы можете заметить кнопку “Недавние”, которая содержит выпадающий список таблиц, которые вы недавно просматривали. Этот список отображается по-умолчанию. Но если вы хотите хранить его постоянно между сессиями, можете включить опцию recent в конфиге, и ваша история посещений будет сохранена в базе.

Настройки отображения таблицы

Просматривая таблицы, вы можете изменять порядок столбцов перемещением. Эти изменения видимы только вам. Настоящий порядок столбцов при этом не изменяется. В дополнение вы также можете сортировать столбцы по возрастанию и по убыванию. Такие изменения хранятся в пределах сессии, а при разлогировании будут сброшены и заменены на настройки по-умолчанию. Однако, если вы хотите, чтобы таблицы выгладили “по-вашему” всё время, то активируйте опцию table_uiprefs.

Пользователи и группы пользователей

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

Скрытие навигации

С помощью navigationhiding вы можете скрывать некоторые таблицы в панели навигации. При клике на иконку лампочки рядом с именем таблицы, вы её скроете. Так же можете снова сделать ее видимой, повторно кликнув на иконку лампочки. Таким образом вы разгрузите панель навигации от неиспользуемых таблиц.

Отслеживание

С помощью данной возможности вы можете отследить все изменения, которые были проведены над конкретными таблицами с помощью PhpMyAdmin. Перейдя к таблице, и открыв вкладку “Слежение”, можно создать версию текущей таблицы. Теперь все изменения, которые были проделаны над этой таблицей с помощью PhpMyAdmin, будут сохраняться. Таким же образом можно легко определить, какие изменения были произведены в таблице с момента создания последней версии.

Пользовательские настройки

Все пользовательские настройки по-умолчанию хранятся в вашем браузере. Это означает, что если вы решите воспользоваться другим браузером, или почистите кеш браузера, все ваши настройки пропадут. Активировав userconfig вы сохраните ваши настройки в базе данных на постоянной основе.

Координаты дизайнера баз данных

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

Избранное

Включив опцию favorite, в режиме просмотра базы данных вы можете заметить появление иконок звездочек около названий таблиц. Для добавления таблицы в избранное, достаточно кликнуть по звездочке. В панели навигации вы увидите выпадающий список “Избранное”. Таблицы, которые вы добавили в избранное, появятся в этом списке.

Сохранение параметров поиска

Открыв базу данных и перейдя на вкладку “Запрос”, вы можете настроить расширенный поиск. Параметры поиска можно добавить в закладки. Отмечу, что это не закладки SQL-запросов, рассмотренные ранее. С помощью этой опции вы можете сохранить параметры поиска, и использовать их позже.

Заключение

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

Данный урок подготовлен для вас командой сайта ruseller.com
Источник урока: http://www.sitepoint.com/enable-phpmyadmins-extra-features/
Перевел: Станислав Протасевич
Урок создан: 23 Июня 2014
Просмотров: 49163
Правила перепечатки


5 последних уроков рубрики "PHP"

  • Фильтрация данных с помощью zend-filter

    Когда речь идёт о безопасности веб-сайта, то фраза "фильтруйте всё, экранируйте всё" всегда будет актуальна. Сегодня поговорим о фильтрации данных.

  • Контекстное экранирование с помощью zend-escaper

    Обеспечение безопасности веб-сайта — это не только защита от SQL инъекций, но и протекция от межсайтового скриптинга (XSS), межсайтовой подделки запросов (CSRF) и от других видов атак. В частности, вам нужно очень осторожно подходить к формированию HTML, CSS и JavaScript кода.

  • Подключение Zend модулей к Expressive

    Expressive 2 поддерживает возможность подключения других ZF компонент по специальной схеме. Не всем нравится данное решение. В этой статье мы расскажем как улучшили процесс подключение нескольких модулей.

  • Совет: отправка информации в Google Analytics через API

    Предположим, что вам необходимо отправить какую-то информацию в Google Analytics из серверного скрипта. Как это сделать. Ответ в этой заметке.

  • Подборка PHP песочниц

    Подборка из нескольких видов PHP песочниц. На некоторых вы в режиме online сможете потестить свой код, но есть так же решения, которые можно внедрить на свой сайт.

^ Наверх ^