AWS RDS aurora Mysql 5.6 не может создать таблицу с двигателем, отличным от заданного по умолчанию - PullRequest
0 голосов
/ 05 июля 2018

Проблема: не удается создать таблицу с механизмом хранения MyISAM в AURORA MySQL 5.6 RDS

Конфигурация:

У меня есть RDS с Aurora MySQL 5.6.10a.

default_storage_engine установлен на InnoDB и не может быть изменен (Modifiable = false).

Когда я запускаю команду

SHOW ENGINES

Я получаю:

+----------+---------+-------------------------+--------------+------+------------+
| Engine   | Support | Comment                 | Transactions | XA   | Savepoints |
+----------+---------+-------------------------+--------------+------+------------+
| 'MyISAM' | 'YES'   | 'MyISAM storage engine' | 'NO'         | 'NO' | 'NO'       |
+----------+---------+-------------------------+--------------+------+------------+

Моя цель:

Создание таблицы с поисковой системой MyISAM.

Что происходит:

Когда я пытаюсь создать таблицу с помощью команды:

CREATE TABLE `myTable` (
  `myTableId` int(11) NOT NULL AUTO_INCREMENT,
  `latLong` point NOT NULL,
  `createdAt` datetime DEFAULT NULL,
  `updatedAt` datetime DEFAULT NULL,
  PRIMARY KEY (`myTableId`),
  SPATIAL KEY `point_storePoint_spatial_idx` (`latLong`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin;

Я получаю:

0 row(s) affected, 1 warning(s): 1266 Using storage engine InnoDB for table 'myTable' Records: 0  Duplicates: 0  Warnings: 1

Что я должен изменить, чтобы создать желаемую таблицу? Заранее спасибо за ответ.

Ответы [ 2 ]

0 голосов
/ 05 июля 2018

В: Что означает «совместимость с MySQL»?

Это означает, что большая часть кода, приложений, драйверов и инструментов, которые вы уже используете сегодня в своих базах данных MySQL, может использоваться с Aurora практически без изменений. Ядро базы данных Amazon Aurora разработано так, чтобы быть совместимым с MySQL 5.6 с использованием механизма хранения InnoDB. Некоторые функции MySQL, такие как механизм хранения MyISAM, недоступны в Amazon Aurora.

Для получения дополнительной информации прочитайте FAQ Aurora: https://aws.amazon.com/rds/aurora/faqs/

0 голосов
/ 05 июля 2018

Аврора не поддерживает MyISAM. Если вам абсолютно необходимо иметь MyISAM, вы можете попробовать MySQL RDS, но имейте в виду, что это может повлиять на доступные функции восстановления данных, восстановления на определенный момент времени и т. Д.

Вы можете создавать пространственные индексы в Aurora, используя движок по умолчанию (InnoDB).

Редактировать: Хорошая статья посвящена обсуждению геопространственной индексации Aurora на https://aws.amazon.com/blogs/database/amazon-aurora-under-the-hood-indexing-geospatial-data-using-z-order-curves/, в которой утверждается, что их реализация имеет в 10 раз лучшую производительность, чем MySQL.

...