Последний штрих — phpMyAdmin
Последний штрих — phpMyAdmin
Область задач web-разработки, для решения которых необходимо обеспечить взаимодействие с базами данных, весьма велика. Она простирается от простейших вариантов до очень сложных комплексных решений. Такие технологии применяются как в любительских проектах, так и в крупных порталах и приложениях электронной коммерции. Потребность совершенно логично переходит в спрос, и на рынке уже существует множество самых разнообразных СУБД, способных решать широкий спектр задач. Появились и весьма полезные инструменты, улучшающие работу с различными СУБД. Об одном из них — пакете phpMyAdmin — и пойдет речь.
К счастью для нас, кроме очень даже недешевых решений в области работы с базами данных, существуют и бесплатные продукты, которые во многих областях успешно конкурируют со своими коммерческими собратьями. Среди подобных СУБД можно назвать такие пакеты, как Firebird, PostgreSQL и, конечно, MySQL. Данный пакет заслужил широкое признание за свои качества и стал популярным выбором в области web-технологий. Конечно, нет ничего идеального, у MySQL есть и свои недостатки. Как и в случае с любым другим продуктом, успех зависит от правильно поставленных задач и грамотного выбора инструментов их решения. При таком подходе продукт покажет себя с самой лучшей стороны, а его недостатки будут обойдены.
СУБД MySQL имеет скандинавские корни. Начальной точкой ее современной истории можно считать 1994 год. Этот период тесно связан с именем Михаэля Видениуса, который по заказу шведской компании TcX взялся за разработку нового серверного решения для работы с базами данных через Web. Имевшиеся тогда на рынке недорогие средства не удовлетворяли поставленным заказчиком задачам, а коммерческие пакеты фирма посчитала неоправданно дорогими. Определенное влияние на проект оказала СУБД mSQL, для которой к тому времени уже существовало некоторое количество бесплатных разработок. Использовал он и собственную разработку еще 1979 года рождения — СУБД UNIREG.
Первая свободно распространяемая версия — MySQL 3.11.1 — появилась в 1996 году и предназначалась для работы под Linux и Solaris. Это во многом явилось заслугой Дэвида Оксмарка, который еще и принял участие в написании документации по использованию MySQL. Теперь существует множество вариантов MySQL и для других операционных систем, в том числе Windows. При необходимости можно получить исходный код этой СУБД.
От истории и теории перейдем к практике. Следуя логике предыдущих статей, рассмотрим некоторые аспекты использования данного пакета в среде Windows с целью получения возможности написания и тестовой отладки web-приложений для каких-либо собственных проектов, а также с целью обучения соответствующим технологиям.
Подробно рассматривать установку данной СУБД, по моему мнению, нет никакого резона — все достаточно просто и понятно. О настройке MySQL и дальнейшей работе с ней написана, в том числе авторами "КГ", масса прекрасных публикаций самого различного плана и на любой вкус — от азов до весьма интересных и сложных вариантов использования. Следовательно, проблемы с материалами по освоению данной СУБД возникнуть не должно. Я же хочу обратить ваше внимание на весьма удобный и достаточно распространенный инструмент работы с базами данных MySQL под названием phpMy Admin, который вполне может пригодиться, в том числе и любителю, работающему в домашних условиях.
По сути своей phpMyAdmin представляет собой набор готовых скриптов, написанных на языке PHP и позволяющих организовать полноценное, в том числе удаленное, взаимодействие с базами данных MySQL, используя стандартные способы, но в гораздо более удобной форме.
Распространяется phpMyAd-min по условиям GNU General Public License. Взять его можно по адресу www.phpmyadmin.net . На сегодня текущей версией является phpMyAdmin 2.5.0. Размер архива сравнительно невелик и составляет немногим более полутора мегабайт.
C помощью данного пакета можно создавать и удалять базы данных, производить операции на уровне таблиц, а также работать с отдельными полями в записях. Имеются функции выполнения SQL-запросов, в том числе сохраненных в отдельных файлах, а также многие другие возможности.
Для своей работы phpMy-Admin требует наличия PHP версии не ниже 3.0.8 с поддержкой работы с MySQL, а также собственно саму СУБД MySQL версий от 3.21.х до 4.0.х. Что касается MySQL 4.1.x, то разработчики предупреждают, что здесь возможны неприятные сюрпризы.
Полученный архив необходимо распаковать в каталог, с которым работает сервер. Далее следует уже ставшая привычной работа с текстовыми настроечными файлами, после чего можно выполнить несколько скриптов, необходимых для достижения полной функциональности пакета. Если перед вами встанет задача обеспечения должного уровня безопасности при работе phpMyAdmin, то в документации к пакету вы найдете некоторые советы по решению подобных проблем.
Все работы по настройке производятся с использованием файла config.inc.php. Туда предстоит внести некоторые изменения, необходимые для дальнейшей работы.
Первым делом надо найти строку, задающую URL вашего ресурса и вписать реальный адрес вашего сайта и путь к каталогу, в котором находится phpMyAdmin:
$cfg['PmaAbsoluteUri'] = 'http://адрес/путь_к_директории_phpMyAdmin/';
В теории данный параметр может быть установлен автоматически. Можно попробовать поработать и без его установки. Потом, в случае возникновения ошибок, параметр устанавливается вручную. Не вижу серьезных причин, из-за которых это нельзя сделать сразу и самому.
Если вы решили положиться на автоматику и не указали никакого значения, то в случае успешной работы системы, для того чтобы избавиться от выдаваемых предупреждений, поменяйте значение еще одной настройки:
$cfg['PmaAbsoluteUri_DisableWarning'] = TRUE;
Если продвигаться по конфигурационному файлу дальше, то можно обнаружить достаточно приличный набор настроек, отвечающих за взаимодействие с сервером MySQL. Перечислим самые необходимые настройки, без которых нельзя обойтись, если мы хотим получить работоспособный вариант. С остальными при необходимости можно разобраться с помощью комментариев в самом файле config.inc.php или обратившись к документации.
Теперь стоит отыскать строку $cfg['Servers'][$i]['host'] string, которая отвечает за имя вашего сервера MySQL. По умолчанию там указано значение localhost. В нашем случае такой вариант вполне подходит, поэтому имеет смысл оставить его без изменений.
Следующие важные для нас настройки содержатся в трех идущих подряд строчках, определяющих параметры авторизации:
$cfg['Servers'][$i]['auth_type']
$cfg['Servers'][$i]['user']
$cfg['Servers'][$i]['password']
Первая определяет способ аутентификации (config, http или cookie), вторая — имя пользователя, под которым происходит подключение к MySQL. Третья понадобится в том случае, если аутентификация происходит с использованием config, тогда там указывается пароль соответствующего пользователя.
После этой секции идет группа настроек, определяющих другие параметры работы пакета, например, запросы на подтверждение операций удаления баз данных и таблиц и так далее.
Если вам чем-то не угодил предлагаемый разработчиками внешний вид страниц, генерируемых phpMyAdmin, можно подстроить его под свой вкус с помощью параметров, находящихся в секции Custo-mization & design.
Для того чтобы получить в свое распоряжение все расширенные возможности phpMy-Admin, необходимо создать несколько служебных таблиц. Это можно сделать, воспользовавшись готовым файлом create_tables.sql, который находится в подкаталоге scripts каталога вашего phpMyAdmin.
Посмотрим на результат наших действий: откроем адрес http://localhost/каталог_с_php-myadmin/index.php. Вы должны увидеть страницу, состоящую из двух фреймов. В левом представлен список всех имеющихся на данном сервере баз данных MySQL. После выбора базы там выводится перечень ее таблиц. Внизу располагается ссылка на так называемое Query Window, которое предоставляет доступ к таким функциям, как импорт текстовых файлов, работа с SQL и просмотр истории выполненных SQL-запросов. Справа находится основная рабочая область, содержащая несколько различных вкладок. С их помощью можно просмотреть структуру базы данных с подробной информацией о каждой таблице, выполнить SQL-запрос, произвести поиск и экспорт данных в различных форматах. Таким образом, мы получили по сути приятный web-интерфейс к базам данных MySQL.
Теперь у вас есть собственный сервер Apache с поддержкой языков PHP и Perl, СУБД и пакет phpMyAdmin, позволяющий работать с ними с определенным уровнем комфорта. Эта система предоставляет хорошие возможности для работы с различными проектами и их отладки на локальном компьютере. Остается только пожелать хорошей творческой фантазии в дальнейшей работе.
Алексей Кутовенко,
alteridem@tut.by
Область задач web-разработки, для решения которых необходимо обеспечить взаимодействие с базами данных, весьма велика. Она простирается от простейших вариантов до очень сложных комплексных решений. Такие технологии применяются как в любительских проектах, так и в крупных порталах и приложениях электронной коммерции. Потребность совершенно логично переходит в спрос, и на рынке уже существует множество самых разнообразных СУБД, способных решать широкий спектр задач. Появились и весьма полезные инструменты, улучшающие работу с различными СУБД. Об одном из них — пакете phpMyAdmin — и пойдет речь.
К счастью для нас, кроме очень даже недешевых решений в области работы с базами данных, существуют и бесплатные продукты, которые во многих областях успешно конкурируют со своими коммерческими собратьями. Среди подобных СУБД можно назвать такие пакеты, как Firebird, PostgreSQL и, конечно, MySQL. Данный пакет заслужил широкое признание за свои качества и стал популярным выбором в области web-технологий. Конечно, нет ничего идеального, у MySQL есть и свои недостатки. Как и в случае с любым другим продуктом, успех зависит от правильно поставленных задач и грамотного выбора инструментов их решения. При таком подходе продукт покажет себя с самой лучшей стороны, а его недостатки будут обойдены.
СУБД MySQL имеет скандинавские корни. Начальной точкой ее современной истории можно считать 1994 год. Этот период тесно связан с именем Михаэля Видениуса, который по заказу шведской компании TcX взялся за разработку нового серверного решения для работы с базами данных через Web. Имевшиеся тогда на рынке недорогие средства не удовлетворяли поставленным заказчиком задачам, а коммерческие пакеты фирма посчитала неоправданно дорогими. Определенное влияние на проект оказала СУБД mSQL, для которой к тому времени уже существовало некоторое количество бесплатных разработок. Использовал он и собственную разработку еще 1979 года рождения — СУБД UNIREG.
Первая свободно распространяемая версия — MySQL 3.11.1 — появилась в 1996 году и предназначалась для работы под Linux и Solaris. Это во многом явилось заслугой Дэвида Оксмарка, который еще и принял участие в написании документации по использованию MySQL. Теперь существует множество вариантов MySQL и для других операционных систем, в том числе Windows. При необходимости можно получить исходный код этой СУБД.
От истории и теории перейдем к практике. Следуя логике предыдущих статей, рассмотрим некоторые аспекты использования данного пакета в среде Windows с целью получения возможности написания и тестовой отладки web-приложений для каких-либо собственных проектов, а также с целью обучения соответствующим технологиям.
Подробно рассматривать установку данной СУБД, по моему мнению, нет никакого резона — все достаточно просто и понятно. О настройке MySQL и дальнейшей работе с ней написана, в том числе авторами "КГ", масса прекрасных публикаций самого различного плана и на любой вкус — от азов до весьма интересных и сложных вариантов использования. Следовательно, проблемы с материалами по освоению данной СУБД возникнуть не должно. Я же хочу обратить ваше внимание на весьма удобный и достаточно распространенный инструмент работы с базами данных MySQL под названием phpMy Admin, который вполне может пригодиться, в том числе и любителю, работающему в домашних условиях.
По сути своей phpMyAdmin представляет собой набор готовых скриптов, написанных на языке PHP и позволяющих организовать полноценное, в том числе удаленное, взаимодействие с базами данных MySQL, используя стандартные способы, но в гораздо более удобной форме.
Распространяется phpMyAd-min по условиям GNU General Public License. Взять его можно по адресу www.phpmyadmin.net . На сегодня текущей версией является phpMyAdmin 2.5.0. Размер архива сравнительно невелик и составляет немногим более полутора мегабайт.
C помощью данного пакета можно создавать и удалять базы данных, производить операции на уровне таблиц, а также работать с отдельными полями в записях. Имеются функции выполнения SQL-запросов, в том числе сохраненных в отдельных файлах, а также многие другие возможности.
Для своей работы phpMy-Admin требует наличия PHP версии не ниже 3.0.8 с поддержкой работы с MySQL, а также собственно саму СУБД MySQL версий от 3.21.х до 4.0.х. Что касается MySQL 4.1.x, то разработчики предупреждают, что здесь возможны неприятные сюрпризы.
Полученный архив необходимо распаковать в каталог, с которым работает сервер. Далее следует уже ставшая привычной работа с текстовыми настроечными файлами, после чего можно выполнить несколько скриптов, необходимых для достижения полной функциональности пакета. Если перед вами встанет задача обеспечения должного уровня безопасности при работе phpMyAdmin, то в документации к пакету вы найдете некоторые советы по решению подобных проблем.
Все работы по настройке производятся с использованием файла config.inc.php. Туда предстоит внести некоторые изменения, необходимые для дальнейшей работы.
Первым делом надо найти строку, задающую URL вашего ресурса и вписать реальный адрес вашего сайта и путь к каталогу, в котором находится phpMyAdmin:
$cfg['PmaAbsoluteUri'] = 'http://адрес/путь_к_директории_phpMyAdmin/';
В теории данный параметр может быть установлен автоматически. Можно попробовать поработать и без его установки. Потом, в случае возникновения ошибок, параметр устанавливается вручную. Не вижу серьезных причин, из-за которых это нельзя сделать сразу и самому.
Если вы решили положиться на автоматику и не указали никакого значения, то в случае успешной работы системы, для того чтобы избавиться от выдаваемых предупреждений, поменяйте значение еще одной настройки:
$cfg['PmaAbsoluteUri_DisableWarning'] = TRUE;
Если продвигаться по конфигурационному файлу дальше, то можно обнаружить достаточно приличный набор настроек, отвечающих за взаимодействие с сервером MySQL. Перечислим самые необходимые настройки, без которых нельзя обойтись, если мы хотим получить работоспособный вариант. С остальными при необходимости можно разобраться с помощью комментариев в самом файле config.inc.php или обратившись к документации.
Теперь стоит отыскать строку $cfg['Servers'][$i]['host'] string, которая отвечает за имя вашего сервера MySQL. По умолчанию там указано значение localhost. В нашем случае такой вариант вполне подходит, поэтому имеет смысл оставить его без изменений.
Следующие важные для нас настройки содержатся в трех идущих подряд строчках, определяющих параметры авторизации:
$cfg['Servers'][$i]['auth_type']
$cfg['Servers'][$i]['user']
$cfg['Servers'][$i]['password']
Первая определяет способ аутентификации (config, http или cookie), вторая — имя пользователя, под которым происходит подключение к MySQL. Третья понадобится в том случае, если аутентификация происходит с использованием config, тогда там указывается пароль соответствующего пользователя.
После этой секции идет группа настроек, определяющих другие параметры работы пакета, например, запросы на подтверждение операций удаления баз данных и таблиц и так далее.
Если вам чем-то не угодил предлагаемый разработчиками внешний вид страниц, генерируемых phpMyAdmin, можно подстроить его под свой вкус с помощью параметров, находящихся в секции Custo-mization & design.
Для того чтобы получить в свое распоряжение все расширенные возможности phpMy-Admin, необходимо создать несколько служебных таблиц. Это можно сделать, воспользовавшись готовым файлом create_tables.sql, который находится в подкаталоге scripts каталога вашего phpMyAdmin.
Посмотрим на результат наших действий: откроем адрес http://localhost/каталог_с_php-myadmin/index.php. Вы должны увидеть страницу, состоящую из двух фреймов. В левом представлен список всех имеющихся на данном сервере баз данных MySQL. После выбора базы там выводится перечень ее таблиц. Внизу располагается ссылка на так называемое Query Window, которое предоставляет доступ к таким функциям, как импорт текстовых файлов, работа с SQL и просмотр истории выполненных SQL-запросов. Справа находится основная рабочая область, содержащая несколько различных вкладок. С их помощью можно просмотреть структуру базы данных с подробной информацией о каждой таблице, выполнить SQL-запрос, произвести поиск и экспорт данных в различных форматах. Таким образом, мы получили по сути приятный web-интерфейс к базам данных MySQL.
Теперь у вас есть собственный сервер Apache с поддержкой языков PHP и Perl, СУБД и пакет phpMyAdmin, позволяющий работать с ними с определенным уровнем комфорта. Эта система предоставляет хорошие возможности для работы с различными проектами и их отладки на локальном компьютере. Остается только пожелать хорошей творческой фантазии в дальнейшей работе.
Алексей Кутовенко,
alteridem@tut.by
Компьютерная газета. Статья была опубликована в номере 24 за 2003 год в рубрике soft :: субд