Для удобства разработчика
Думаю, по названию этой программы вы уже успели догадаться о том, что нужна она для работы с базами данных MySQL. А что именно она умеет делать - об этом расскажет данная обзорная статья.
Вступление
MySQL - это сегодня, пожалуй, самая популярная СУБД на постсоветском пространстве. И, пожалуй, не только на постсоветском пространстве, но и во всём мире, поскольку количество проектов, созданных с использованием именно этой системы управления базами данных, не поддаётся никакому подсчёту. Почему? Да просто потому, что число этих проектов растёт с каждым днём, и пока вы будете считать, будут появляться всё новые, а значит, процедура подсчёта растянется до бесконечности.
Нет поэтому, в общем-то, ничего удивительного в том, что разработчики этих проектов, равно как и люди, занимающиеся в последующем их поддержкой, нуждаются в удобных средствах проектирования и администрирования баз данных для этой сверхпопулярной СУБД. В "Компьютерных вестях" я уже не раз рассказывал об универсальных инструментах, которые умеют работать со множеством разных СУБД, однако, несмотря на это, всё же не думаю, что рассказ о MySQL-Front будет бесполезен.
Дело в том, что многофункциональные комбайны, поддерживающие кучу разных СУБД и позволяющие осуществлять миграцию данных и схем баз данных между ними, обычно стоят довольно много денег. Не секрет, конечно, что многие наши программисты вовсе не погнушаются воспользоваться Google, чтобы найти с его помощью магическое сочетание названия искомой программы и слова "crack". Однако это как-то не очень красиво, и, опять таки, в свете того, что во всём мире идёт борьба с пиратством в области ПО, лучше приготовиться к тому, что и в Беларуси скоро пиратское программное обеспечение будет забыто как сон.
Другой минус инструментов, нацеленных на работу со множеством разных СУБД, состоит в том, что из-за своей многоплановости они часто не слишком хорошо адаптированы к каждой конкретной СУБД из всего списка поддерживаемых ими. Если же вы работаете над проектом, который пока что в обозримом будущем не предполагает перехода с MySQL на какую-либо ещё систему управления базами данных, то для вас хорошая поддержка всех возможностей именно этой СУБД будет гораздо важнее, чем гипотетическая возможность легко перейти на любую другую систему.
Возможности: общий обзор
Для начала, я так думаю, стоит сказать, где именно на необозримых просторах Всемирной паутины можно найти MySQL-Front. Сделать это очень просто, потому что адрес сайта программы созвучен её собственному названию: www.mysqlfront.de. Естественно, там можно найти и пробную 30-дневную версию этого инструмента для работы с базами данных MySQL.
При старте программы вам предложат создать новое подключение к базе данных. Что приятно и удобно, при создании оного можно выбрать не только имя, но и иконку, которая будет отображаться рядом с этим именем в списке всех доступных подключений. Это поможет легче ориентироваться в нём, особенно если список этот будет достаточно велик. Ну, естественно, для каждого подключения потребуется указать не только иконку, но и имя сервера, имя и пароль для учётной записи пользователя и прочие подобные детали.
Работа как со схемой баз данных, так и с самими данными производится в окне, большая часть которого, конечно же, занята таблицей с данными или элементами структуры БД, а меньшая - деревом со всеми базами и их таблицами. Там же можно отдельно просмотреть списки пользователей и системных переменных СУБД, что тоже весьма удобно - переменные обычно мало где можно посмотреть, не залезая в дебри главного меню окна. Редактирование уже имеющихся структурных элементов и добавление новых происходит предельно просто и прозрачно, с помощью специальных диалоговых окон, позволяющих легко настроить типы данных для полей, задать возможность нулевых значений для полей и т.д. и т.п. Помимо этих нехитрых, но самых важных для любого разработчика и администратора баз данных инструментов, имеется в программе и редактор SQL-запросов, который даст возможность работать более глубоко с базой данных продвинутым пользователям.
Кстати, не забудьте заглянуть в настройки программы - вы их легко найдёте с помощью главного меню в её окне. MySQL-Front поддерживает большое количество различных языков интерфейса, среди них есть и русский. Конечно, среди программистов и администраторов считается чуть ли не моветоном использование русского языка в своих инструментах, однако здесь я не согласен с мнением большинства и считаю, что использование программ на русском (или предпочтительно, конечно же, на белорусском) языке совершенно не вредит ИТ-специалисту в плане языковой практики. Всё равно по менюшкам MySQL-Front английскому не научишься, а от того, что выставишь русский, английский не забудешь.
Возможности: интересные моменты
То, что я изложил выше, - это, фактически, базовая функциональность любой программы, претендующей на звание средства для проектирования и администрирования баз данных. Однако в арсенале MySQL-Front есть и более интересные вещи, которые заслуживают того, чтобы вы обратили на них своё внимание.
Во-первых, стоит пару слов сказать о том, каким образом MySQL-Front взаимодействует с базами данных. Программа умеет работать с базами без использования DLL-библиотеки, через которую обычно происходит доступ к данным. Правда, можно заставить программу использовать и DLL'ку. В случае, если провайдер или администратор не разрешает прямой доступ к удалённой базе данных, для этого можно воспользоваться HTTP-туннелем, чтобы установить соединение с базой данных в любом случае. Думаю, эта возможность окажется полезной для многих разработчиков из стран СНГ. Кроме того, как утверждают разработчики этого инструмента, MySQL-Front умеет работать со всеми версиями СУБД MySQL, начиная с такой уже в наше время старой и почтенной, как 3.23. Ну а поддержку будущих версий обеспечивает возможность использования собственной MySQL'евской DLL-библиотеки, так что можно особенно не беспокоиться за совместимость с будущими версиями СУБД при покупке MySQL-Front.
В программу встроена возможность редактирования BLOB-полей с помощью шестнадцатеричного редактора. Честно говоря, возможность не слишком, на мой взгляд, полезная, потому что те же картинки редактировать с его помощью, мягко говоря, не слишком просто. Однако в определённых случаях, на уровне copy/paste, этот редактор может выручить администратора базы данных. Графику, содержащуюся в BLOB-полях, кстати, можно из программы и просматривать, так что ориентироваться в базе данных, содержащей BLOB-поля с картинками, будет не так уж и сложно посредством просмотра этих самых картинок. То же самое, кстати, относится и к тексту в формате RTF.
Гораздо приятнее для программиста будет полная поддержка Unicode для редактирования как самих данных, так и для их идентификаторов (например, имён таблиц, полей в таблицах, триггеров и прочих подобных вещей). Хотя, конечно, использовать что-то отличное от латинских символов в именах идентификаторов - это моветон в гораздо большей степени, нежели использование русского языка в интерфейсе. Ещё одной приятной особенностью MySQL-Front является поддержка партишининга (по-русски говоря, разбиения на несколько частей) таблиц.
Поддерживает программа и экспорт данных в различные форматы. Вы можете воспользоваться MySQL-Front для того, чтобы экспортировать записи из какой-либо таблицы в SQL-скрипты, текстовые файлы, CSV, файлы Microsoft Access или Microsoft Excel. Учитывая тот факт, что для работы конечные пользователи чаще всего используют продукты, входящие в состав Microsoft Office, эту возможность можно считать очень и очень полезной. Также можно передать данные из любой другой базы, при условии, что СУБД, которая должна передавать данные, доступна посредством установленного в системе ODBC-драйвера. Так что, как видите, и с помощью MySQL-Front можно, при определённых ритуальных шаманских телодвижениях со стороны разработчиков, мигрировать базу данных с одной СУБД на другую. Передавать, сиречь экспортировать данные с помощью MySQL-Front в другие СУБД, к сожалению, нельзя, однако для этой задачи можно воспользоваться другими инструментами или написать, экономии ради, свой собственный.
Весьма полезной возможностью представляется также мощный механизм поиска данных внутри всей базы или внутри определённых таблиц с использованием регулярных выражений. Напомню, что узнать подробнее о том, что представляют собой регулярные выражения, можно в "КВ" №14. Имеется также возможность переноса целых баз данных или отдельных таблиц из их состава между различными серверами MySQL - тоже не такая уж бесполезная возможность. Поддерживается также синхронизация двух баз данных или же, опять-таки, отдельных таблиц из их состава. Так что в плане переноса данных MySQL-Front функциональностью не так чтобы совсем обделён.
Для администраторов также наверняка окажутся интересными такие вещи, как детальный показ статуса сервера, конфигурирование настроек безопасности сервера (о переменных и о пользователях я уже, кажется, говорил выше). Поддерживаются и сервисные операции с таблицами в базе: проверка, анализ, оптимизация. Также прямо из программы можно просмотреть лог ошибок сервера MySQL.
Резюме
Подводя итоги, можно сказать, что MySQL-Front - это действительно тот инструмент работы с базами данных MySQL, который будет практически одинаково удобен как для администраторов, так и для разработчиков. Возможно, вам показалось, что я излишне захваливаю возможности этого инструмента, и он, на самом-то деле, мало чем отличается от множества аналогичных. Вполне возможно, так оно и есть, поскольку я стараюсь как можно подробнее рассказывать о полезных возможностях программ. Несомненно, найдутся пользователи, для которых всех возможностей, которые им может предложить MySQL-Front, окажется недостаточно. Что ж, тогда могу посоветовать им обратиться к разработчикам с предложением добавить новые функции в их детище, поскольку на сайте MySQL-Front имеется страница, позволяющая легко и быстро это сделать. Кстати, наличие такой страницы на сайте программы - показатель хорошего отношения и уважения со стороны разработчиков к её пользователям.
В любом случае, думаю, с тем, что MySQL-Front - весьма достойное средство, отлично подходящее для того, чтобы работать с базами данных MySQL. Если вас не убедила в этом данная статья, то советую самостоятельно скачать и опробовать MySQL-Front в действии. Думаю, после этого вы точно согласитесь с моей оценкой.
Вадим СТАНКЕВИЧ
Горячие темы