Архив метки: AWS RDS

AWS: Database Migration Service, часть 2 — нет AUTO_INCREMENT и индексов. Фиксы для «foreign key constraint fails» и логов CloudWatch

31 августа 2020
 

 Продолжение поста AWS: Database Migration Service — обзор и пример миграции self-hosted MariaDB в AWS Aurora RDS. И всё было хорошо, пока мы не запустили первые тесты, которые начали отваливаться с ошибками: [2020-08-28 17:13:02] local.ERROR: SQLSTATE[HY000]: General error: 1364 Field ‘id’ doesn’t have a default value Начинаем проверять таблицы, и видим, что поле ID потеряло… Читать далее »

AWS: Database Migration Service, часть 1 — обзор и пример миграции self-hosted MariaDB в AWS Aurora RDS

27 августа 2020
 

 В общем-то — продолжение эпопеи с миграцией приложения из Digital Ocean в Amazon Web Services. В посте Kubernetes: нагрузочное тестирование и high-load тюнинг — проблемы и решения мы тестировали работу самого приложения в Kubernetes, следующая задача — перенести базу данных. Сейчас база данных проекта находится в Digital Ocean, на обычном дроплете с Linux и MariaDB.… Читать далее »

Kubernetes: нагрузочное тестирование и high-load тюнинг — проблемы и решения

25 августа 2020
 

 Вообще, этот пост планировался в виде небольшой заметки о том, как использовать NodeAffinity для Kubernetes Pod: Но, как это часто бывает — за одним потянулось другое, за другим третье — и в результате вышел очередной длиннопост в свободном стиле. Итак, собирался я написать про NodeAffinity, как вдруг подумал — а как будет себя вести Kubernetes… Читать далее »

AWS: RDS — обновление Certificate Authority SSL сертификата

22 ноября 2019
 

 Давно уже начали получать письма о том, что надо обновить CA сертификаты, всё было некогда. Пора сделать, выполним на Dev сервере, потом повторим на Staging и Production. Мы используем обычный RDS MariaDB, документация по обновлению тут>>>. Процесс очень простой, занимает несколько минут, особенно, если вы не используете SSL между клиентами и RDS. У нас, например,… Читать далее »

AWS RDS: SQLSTATE[22001] — Data too long for column в MariaDB 10.2

8 августа 2019
 

 Имеется PHP-приложение с бекендом AWS RDS MariaDB. На версии 10.0 работало нормально, но после миграции на 10.2 — в логах начали появляться ошибки: PDOException: SQLSTATE[22001]: String data, right truncated: 1406 Data too long for column ‘name’ at row 1 in /data/projects/projectname/vendor/yiisoft/yii2/db/Command.php:1290 Вариант первый — это просто сменить тип колонки с VARCHAR на LONGTEXT, например так:… Читать далее »

AWS: MariaDB RDS — kill: You are not owner of thread

14 мая 2019
 

 Имеется AWS RDS с MariaDB. Ошибка и решение не специфичны ни для AWS RDS, ни для MariaDB. При попытке убить процесс — RDS сообщает, что: Решение — использовать процедуру mysql.rds_kill(): Вызываем её: Для Azure MySQL имеется аналогичная процедура mysql.az_kill(). Готово.

AWS: RDS логи, сбор в CloudWatch Logs и CloudFormation

7 марта 2019
 

 Имеется пачка AWS RDS инстансов с MariaDB. Бекенд-разработчики просят включить им slow-логи, что бы они могли дебажить свои запросы. Задача — включить логи, и добавить их передачу в CloudWatch Logs для дальнейшего анализа. RDS, как и всё остальное, у нас создаётся из CloudFormation шаблона — поэтому будут примеры и с ним. Кроме стандартных general/error/slow логов… Читать далее »

AWS RDS: PDOException: SQLSTATE[08004] [1040] Too many connections

26 декабря 2018
 

 В Sentry начали сыпаться ошибки вида: PDOException: SQLSTATE[08004] [1040] Too many connections in /data/projects/project/vendor/yiisoft/yii2/db/Connection.php:687 Stack trace: #0 /data/projects/project/vendor/yiisoft/yii2/db/Connection.php(687): PDO->__construct(‘mysql:host=stag…’, ‘user’, ‘pass’, NULL) Для всех инстансов RDS MariaDB максимальное кол-во подключений считается по формуле {DBInstanceClassMemory/12582880}. Т.е. в нашем случае это тип db.m4.xlarge с 16ГБ памяти, следовательно: Для указания значения лимита используется переменная max_connections: Проверяем значение напрямую на сервере: Ну… Читать далее »

MariaDB: AWS RDS read-replica и Seconds_Behind_Master

10 июля 2018
 

 Имеется AWS RDS read-replica сервер, у котого постоянно растёт значение Seconds_Behind_Master. Ниже — попытки разобраться в причинах и исправить ситуацию. Забегая наперёд — причину нашёл, однако решения как избежать её в будущем не искал, а «пофиксилось» путём запуска нового read-replica сервера, но на будущее оставлю себе запись о том, как проверял статус и искал решение.… Читать далее »

AWS: RDS — сбросить пароль администратора

4 июля 2018
 

 Имеется инстанс, развёрнутый из снапшота, пароль утерян. Что бы сменить пароль — выбираем инстанс, выбираем Modify: И в Settings — задаём новый пароль: Выбираем Apply immediately: Внимательно читаем предупреждение, что в таком случае будут применены все текущие изменения, который ждут maintatnce window. Например — мажорный/минорные апдейты версии, что может инициировать рестарт инстанса: Potential unexpected downtime… Читать далее »