Как настроить хранилище документов MySQL на AWS RDS

Я новичок в AWS RDS и MySQL хранилище документов.

Я создал одну лямбду (NodeJS 4.3) и один экземпляр RDS MySQL с портом по умолчанию 3306. Я включил X Plugin, как упомянуто в этой документации, через оболочку MySQL и успешно установил его, что необходимо для хранилища документов MySQL.

Мой lambda импортирует пакет xdevapi (@mysql/xdevapi) и пытается подключиться к экземпляру MySQL RDS через порт 33060, потому что xdevapi использует порт 33060 в качестве порта по умолчанию.

но когда я пытаюсь проверить свою лямбду, она не может подключиться. Потому что xdevapi использует порт по умолчанию 33060. Но мой порт MySQL по умолчанию - 3306. Итак, я добавил пользовательское правило в группы безопасности, чтобы разрешить входящий порт 33060. Затем я попытался проверить лямбду, но она все еще не может подключиться.

Пожалуйста, предложите, если что-то мне не хватает здесь.

2 ответа

Короткий ответ: вы не можете использовать X Plugin в mysql RDS.

Прочтите раздел " Функции MySQL, не поддерживаемые Amazon RDS" в официальном сообщении AWS RDS, в котором говорится, что подключаемый модуль X не поддерживается, поэтому RDS не предоставляет никаких возможностей для настройки порта для него.

X Plugin реализует другой протокол, называемый X Protocol для связи, поэтому он должен быть представлен в другом порту (кроме порта подключения mysql), его порт по умолчанию - 33060. URL-адрес подключения будет примерно такимmysqlx://localhost:33060.

Мне также пришлось использовать mysql Document Store, поэтому я установил mysql 8 на EC2, и он хорошо работает с их X DevAPI.

Похоже, getSession метод занимает port опция:

xdevapi.getSession({
    host: 'localhost',
    port: 3306,
    dbUser: 'root',
    dbPassword: ''
})

Вроде дубликата этого. Короткий ответ: вы, вероятно, не сможете использовать MySQL Document Store на RDS. Проверьте связанный поток для дополнительных деталей.

Другие вопросы по тегам