Утилиты MySQL
ТсХ распространяет MySQL с большим набором вспомогательных утилит, однако набор утилит, предлагаемых сторонними разработчиками, еще богаче. В этом параграфе мы постараемся дать краткий обзор этих инструментов, отложив полное описание до главы 18 «Справочник по РНР и Lite».
Утилиты командной строки (Command Line Tools)
isamchk
Производит проверку файлов, содержащих данные базы. Эти файлы называются ISAM-файлами (ISAM - метод индексированного последовательного доступа). Эта утилита может устранить большую часть повреждений ISAM-файлов. Мы подробнее опишем ее ниже.
isamlog
Читает создаваемые MySQL журналы, относящиеся к ISAM-файлам. Эти журналы можно использовать для воссоздания таблиц или воспроизведения изменений, внесенных в таблицы в течение некоторого промежутка времени.
mysql
Создает прямое подключение к серверу баз данных и позволяет вводить запросы непосредственно из приглашения MySQL.
mysqlaccess
Модифицирует таблицы прав доступа MySQL и отображает их в
удобном для чтения виде. Использование этой утилиты — хороший способ изучения структуры таблиц доступа MySQL.
mysqladmin
Осуществляет административные функции. С помощью этой утилиты можно добавлять и удалять целые базы данных, а также завершать работу сервера.
mysqlbug
Составляет для ТсХ отчет о возникшей в MySQL неполадке. Отчет будет также послан в почтовый список рассылки MySQL, и армия добровольцев MySQL будет исследовать проблему.
mysqldump
Записывает все содержимое таблицы, включая ее структуру, в файл в виде SQL-команд, которыми можно воссоздать таблицу. Выходные данные этой утилиты можно использовать для воссоздания таблицы в другой базе или на другом сервере.
mysqlimport
Считывает данные из файла и вводит их в таблицу базы данных. Это должен быть файл с разделителями, где разделитель может быть любого обычного вида, например, запятая или кавычки.
mysqlshow
Выводит на экран структуру баз данных, имеющихся на сервере, и таблицы, из которых они состоят.
Утилиты сторонних разработчиков
Ни один поставщик или разработчик не может самостоятельно предоставить все необходимые для программного продукта средства поддержки. Продукты с открытым исходным кодом, такие как Linux, имели столь потрясающий успех не только благодаря проделанной Линусом Торвальдсом работе по созданию ядра Linux, но и благодаря сотням, если не тысячам, программ для Linux сторонних разработчиков. MySQL также значительно выиграл от работы подобных добровольцев. Хотелось бы перечислить все имеющиеся программы, но этот перечень ежедневно меняется. Ниже мы попытались составить представление о том, что имеется в наличии. За самым свежим списком обратитесь на домашнюю страницу MySQL: http://www.mysql.com/Contrib.
Утилиты преобразования баз данных
access_to_mysql
Преобразует базы данных Microsoft Access в таблицы MySQL. Включается в Access в виде функции, позволяющей сохранять таблицы в формате, позволяющем экспортировать их в MySQL.
dbf2mysql
Конвертирует файлы dBASE (DBF) в таблицы MySQL. Хотя dBASE утратил популярность, формат DBF установился как наиболее распространенный для передачи данных между различными приложениями баз данных. Все главные настольные приложения баз данных могут читать и писать DBF-файлы. Это приложение полезно для экспорта/импорта данных в коммерческие настольные базы данных.
Export sql/Importsql
Конвертирует базы данных Microsoft Access в MySQL и обратно. Эти утилиты являются функциями Access, которые можно использовать для экспорта таблиц Access в формате, пригодном для чтения MySQL. С их помощью можно также преобразовывать SQL-выход MySQL в вид, пригодный для чтения Access.
Интерфейсы CGI
РНР
Создает HTML-страницы с использованием специальных тегов, распознаваемых анализатором РНР. РНР имеет интерфейсы к большинству основных баз данных, включая MySQL и mSQL. Мы более подробно расскажем о РНР в главе 12 «РНР и другие средства поддержки управления HTML со стороны баз данных».
Mysql-webadmin
Осуществляет веб-администрирование баз данных MySQL. Используя это средство, можно просматривать таблицы и изменять их содержимое с помощью HTML-форм.
Mysqladm
Осуществляет веб- администрирование баз данных MySQL. Эта CGI-программа позволяет просматривать таблицы через WWW, добавлять таблицы и изменять их содержимое.
www-sql
Создает HTML-страницы из таблиц баз данных MySQL. Эта программа осуществляет разбор HTML-страниц в поисках специальных тегов и использует извлеченные данные для выполнения команд SQL на сервере MySQL.
Клиентские приложения
Mysqlwinadmn
Позволяет администрировать MySQL из Windows. С помощью этого средства можно выполнять функции mysqladmin из графического интерфейса.
xmysql
Обеспечивает полный доступ к таблицам баз данных MySQL для клиента X Window System. Поддерживает групповые вставки и удаления.
xmysqladmin
Позволяет осуществлять администрирование MySQL из X Window System. Это инструмент для графического интерфейса, позволяющий создавать и удалять базы данных и управлять таблицами. С его помощью можно также проверять, запущен ли сервер, перегружать таблицы доступа и управлять потоками.
Интерфейсы программирования
MyODBC
Реализует ODBC API к MySQL в Windows.
Db.py
Обеспечивает доступ MySQL к сценариям Python. Для повышения производительности этот модуль осуществляет буферизацию извлекаемых данных. Программирование на Python для MySQL мы излагаем в главе 11, а подробное справочное руководство по Python представлено в главе 20.
Vdb-dflts
Реализует библиотеку Vdb для MySQL. Vdb - не зависящий от типа базы данных API для С, позволяющий единому клиенту иметь доступ к различным серверам баз данных. Клиенты Vdb могут использовать этот API для досупа к базам данных MySQL.
Delphi-interface
Предоставляет API доступа к MySQL для среды Delphi, выпускаемой Inprise. С помощью этого API любое приложение Delphi получает доступ к базам данных MySQL.
dump2h
Преобразует структуры таблиц MySQL в файлы заголовков С. Эта программа принимает обычный файл, создаваемый mysqldump и генерирует заголовочный файл С, описывающий таблицу в виде структуры (st ruct) на С.
mm.mysql.jdbc
Реализует стандартный API JDBC (Java Database Connectivity -доступ к базам данных из Java). В главе 14 «Java и JDBC» подробно обсуждается программирование на Java с использованием этого API, а в главе 22 «Справочник по JDBC» представлено полное справочное руководство по JDBC 2.0.
twzJdbcForMysql
Реализация JDBC API для Java.
Mysqltcl
Реализует интерфейс Tel к MySQL.
MySQLmodule
Реализует доступ к MySQL из Python.
Mysql-c++
Объектно-ориентированная оболочка MySQL С API для доступа из приложений на C++.
MySQL++
Обеспечивает объектно-ориентированный доступ к MySQL для приложений на C++,
Pike-mysql
Позволяет пользователям известного веб-сервера Roxen разрабатывать интернет-приложения с доступом к MySQL.
Sqlscreens
Генерирует экраны баз данных на Tcl/Tk на основе баз данных MySQL. Позволяет разработчикам строить специализированные . GUI, привязанные к таблицам MySQL.
Squile
Позволяет создавать сценарии на Guile для доступа к таблицам MySQL.
Wintcl
Поддерживает встраивание кода Tel в HTML-файлы. С помощью этого средства легко разрабатывать веб-приложения, способные осуществлять доступ к базам данных MySQL.
Разное
Emacs-sql-mode
Адаптирует стандартный режим SQL для Emacs для поддержки особенностей синтаксиса SQL в MySQL. Вводит отступы, выделяет синтаксис и довершает команды, что облегчает работу с SQL.
findres
Отыскивает в таблицах MySQL зарезервированные слова. Эта-программа ищет в таблицах MySQL зарезервированные слова SQL, которые могут нарушить правильную работу других баз данных, поддерживающих SQL.
Hyalog
Сохраняет в таблице MySQL исходящие факсимильные сообщения. Эта программа отслеживает факсы, отправляемые программой HylaFax, и сохраняет их копии в базе данных MySQL.
mod_auth_mysql
Осуществляет аутентификацию пользователей сервера Apache. Обычно Apache осуществляет контроль доступа с помощью простых текстовых файлов, содержащих имена пользователей и зашифрованные пароли. Данный модуль позволяет управлять доступом через базу данных MySQL.
mod_log_mysql
Регистрирует трафик WWW, проходящий через сервер Apache, в базе данных MySQL.
mysqlpasswd
Обеспечивает добавление, удаление и изменение записей о пользователях, хранимых в MySQL модулем mod_auth_mysql из состава Apache.
Mysql_watchdog
Осуществляет контроль за MySQL с целью обеспечения его непрерывного функционирования с нормальными параметрами.
Nsapi_auth_mysql
Аутентифицирует пользователей на веб-сервере Netscape.
Pam_mysql
Предоставляет интерфейс РАМ (Pluggable Authentication Module -подключаемый модуль аутентификации) к MySQL. РАМ обеспечивает проверку пользователей для ряда служб, включая стандартную регистрацию в системе.
Wuftpd-mysql
Позволяет регистрировать в базе данных MySQL трафик FTP через демон WuFTP.