Мы используем AWS RDS в течение многих лет без каких-либо проблем. Несколько дней назад мы внесли различные изменения в основную БД, из-за чего реплика чтения не смогла наверстать упущенное. В этом нет ничего необычного, и обычный ответ — просто удалить реплику чтения и запустить новую.
Однако, так как это последняя проблема, мы больше не можем подключиться к ней через mysqli из PHP. Подключение к нему через SQLyog — это хорошо, но это бесполезно, поскольку используется через PHP.
Это заняло обычное время для резервного копирования основной базы данных, создания реплики и затем несколько часов, чтобы реплика наверстала упущенное. Задержка реплики в течение нескольких дней была нулевой, но мы не можем подключиться (истекло время ожидания подключения). Повторно использовал одно и то же имя БД.
Основным является m3.2xlarge, точной копией является m3.xlarge. У нас всегда была эта структура (были запущены зарезервированные экземпляры для обоих), и она всегда работала нормально. Однако, также попробовал тот же самый процесс с репликой m3.2xlarge только для тестирования, и это тоже не сработало. Все таблицы InnoDB.
Мы делали это много раз в прошлом без каких-либо проблем. Любые идеи о том, что может внезапно отличаться?
Примерно через десять дней все прошло само собой, и все вернулось на круги своя. С тех пор не смог воссоздать проблему, так что угадывайте только временные проблемы.
То же самое случилось сегодня. «Хитрость» заключается в добавлении чего-то случайного в группу безопасности, поэтому оно обновляется. Использование одной и той же группы безопасности для мастера и реплики.
Других решений пока нет …