В этом разделе приведен список возможностей, которые планируется реализовать в MySQL.
Разработка приведенных в списке пунктов будет проходить примерно в порядке их перечисления. Если вы считаете, что это порядок следует изменить, то, пожалуйста, зарегистрируйте лицензию или окажите поддержку MySQL АВ и сообщите нам, что желательно было бы разработать побыстрее. See section 1.6 Лицензии и поддержка MySQL.
Планируется, что в будущем стандарт ANSI SQL99 будет поддерживаться полностью, но с большим числом полезных расширений. Проблема заключается в том, чтобы сделать все намеченное, не жертвуя скоростью и без компромиссов при кодировании.
Что планируется реализовать в версии в 4.0
Уже все сделано. Сейчас мы только исправляем обнаруженные ошибки в MySQL 4.0. See section D.1 Изменения в версии 4.0.x (В разработке; Альфа) Сейчас ведется разработка версий 4.1 и 5.0.
Things That Should be in 4.1
Следующие возможности планируются для реализации в MySQL 4.1. Список того, что уже сделано, можно найти в @xref{News-4.1.x}.
Стабильная поддержка OpenSSL (MySQL 4.0 поддерживает базовую, не 100%-протестированную поддержку OpenSSL).
Схема перекодировки и синтаксис для поддержки множества разных кодировок.
Встроенная помощь для всех команд из клиента командной строки.
Больше тестирования подготовленных выражений и множественных кодировок для одной таблицы.
Что планируется реализовать в версии 5.0
Перечисленные ниже функции планируется реализовать в MySQL 5.0.
Отметим также, что поскольку у нас над новыми проектами работает большое количество разработчиков, появятся и дополнительные возможности. Существует - хотя и очень небольшая - вероятность, что эти возможности будут введены уже в MySQL 4.1. Список того, что уже сделано в 4.1, можно найти в @xref{News-4.1.x}.
Хранимые процедуры
Поддержка внешних ключей для всех типов таблиц.
Новый текстовый формат файлов определения структуры таблиц (".frm"-файлы) и табличный кэш для определений таблиц. Это позволит нам быстрее получать информацию о структуре таблиц и более качественно поддерживать внешние ключи.
SHOW COLUMNS FROM table_name (используемый клиентом mysql для получения информации о столбцах) не должен открывать таблицы, а только файл определения структуры. Это занимает меньше памяти и будет работать быстрее.
Отказобезопасная репликация.
Резервное копирование без остановки работы системы с очень малыми затратами на выполнение. Резервное копирование без остановки работы системы позволит добавлять новый подчиненный сервер репликации без демонтажа головного сервера.
ROLLUP и CUBE OLAP (Online Analytical Processing) опции группировки для приложения хранения данных (Data warehousing).
Обеспечить возможность для DELETE , работающей с MyISAM -таблицами, использовать кэш записей. Чтобы осуществить это, нам необходимо обновлять кэш записей потока при обновлении ".MYD"-файла.
При использовании SET CHARACTER SET мы должны преобразовать весь запрос целиком, а не только строки. Это позволит пользователям использовать сконвертированные символы в именах баз данных, таблиц и столбцов.
Решить проблему, заключающуюся в том, что оператор RENAME TABLE , использующийся для активной MERGE -таблицы, может повредить таблицу.
Добавить к клиент-серверному протоколу возможность получения информации о прогрессе выполнения для сложных и длительных запросов.
Реализовать RENAME DATABASE . Чтобы сделать эту команду безопасной для всех обработчиков таблиц, она будет работать следующим образом:
- Создавать новую базу данных.
Переименовывать каждую таблицу, помещаемую в новую базу данных, как это обычно делается командой RENAME .
Удалять старую базу данных.
Добавить корректную поддержку VARCHAR (такая поддержка уже имеется для MyISAM ).
Оптимизировать тип BIT , чтобы он занимал 1 бит (сейчас 1 символ).
Новое изменение внутреннего файлового интерфейса. Это позволит сделать обработку всех файлов более однотипной и упростит добавление такой функциональности, как RAID (текущая реализация - это просто хак). - Улучшенные таблицы в памяти (
HEAP ):
1 2 3
8 8 8
| |