Поиск

Кратко о MySQL 4.1

Сервер MySQL версии 4.0 заложил основу для появления новых возможностей, таких как подзапросы и поддержка Unicode, которые реализованы в версии 4.1, а также для работы над хранимыми процедурами, которая завершается в версии 5.0. Упомянутые возможности возглавляют список пожеланий большинства наших клиентов.

С появлением этих усовершенствований критикам MySQL понадобится проявить го­раздо большее воображение, чтобы указать на недостатки в СУБД MySQL. Уже широко зарекомендовавший себя как стабильный, быстрый и простой в эксплуатации, сервер MySQL теперь готов к тому, чтобы удовлетворить требования самых взыскательных потребителей.

Средства, доступные в MySQL 4.1

Все возможности MySQL 4.1, описанные в данном разделе, уже реализованы. Несколько других средств MySQL 4.1 только планируются к реализации (см. раздел Новые средства, запланированные для версии 4.1).

Набор возможностей, добавленных в версии 4.1, в основном утвержден. Большинство новых средств, пребывающих в состоянии разработки, уже доступны или будут доступны в MySQL 5.0 (см. раздел Новые средства, запланированные для версии 5.0).

MySQL 4.1 в настоящее время находится в стадии бета-тестирования, и его бинарные файлы доступны для загрузки по адресу:

http://dev.mysql.com/downloads/mysql/4.1.html

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

Для тех, кто желает использовать наиболее актуальные исходные тексты, находящиеся в процессе разработки, открыт доступ к нашему репозиторию BitKeeper для MySQL 4.1.

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

  • Поддержка подзапросов и порожденных таблиц.

    • "Подзапрос" - это оператор SELECT, вложенный внутри другого оператора.
    "Порожденная таблица" (неименованное представление) - это подзапрос в
    конструкции FROM другого оператора.

  • Увеличение скорости.

    • Ускоренный бинарный клиент-серверный протокол с поддержкой предвари
    тельно подготовленных операторов и связывание параметров.

    • Индексация BTREE теперь поддерживается для таблиц HEAP, значительно сни
    жая время реакции при нечетком поиске.

  • Новая функциональность.

    • Оператор CREATE TABLE имя_таблицы2 LIKE имя_таблицы1 позволяет с помощью единственного оператора создавать новую таблицу со структурой, точнотакой же, как у существующей таблицы.

    • Механизм хранения MyISAM теперь поддерживает пространственные типыOpenGIS для хранения геометрических данных.

    • Репликация может выполняться через SSL-соединения.

  • Соответствие стандартам, переносимость и миграция

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

    • SHOW WARNINGS показывает предупреждения, касающиеся последней выполненной команды.

  • Интернационализация

    • Для поддержки приложений, требующих использования национальных языков, программное обеспечение MySQL обеспечивает работу с кодировкойUnicode через символьные наборы utf8 и ucs2.

    • Символьные наборы теперь можно задавать для столбца, таблицы и базы данных. Это обеспечивает высокую степень гибкости при проектировании приложений, в частности, многоязычных Web-сайтов.

  • Удобство использования

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

    мер, команда help в клиенте командной строки mysql была соответствующим образом модифицирована.

    • В новом клиент-серверном протоколе множественные операторы могут бытьотправлены одним вызовом.

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

    • Реализован новый синтаксис INSERT.. .ON DUPLICATE KEY UPDATE..., которыйпозволяет выполнять оператор UPDATE для существующей записи, если оператор INSERT может привести к дублированию поля, служащего первичным ключом или ключом уникального индекса.

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

    В разделе новостей онлайнового руководства можно найти более детальный список возможностей (см. http://dev.mysql .com/doc/mysql/en/News.html).