LINUX.ORG.RU
ФорумAdmin

Репликация между разными версиями mysql

 , ,


0

2

Здравствуй, ЛОР. В этой теме речь пойдет не об администрировании локалхоста, а о жирной production базе данных. Размещена она по несчастливой случайности в AWS RDS, и работает на mysql 5.5.
Ее надобно проапдейтить на mysql 5.6, т.е сделать консистентный дамп (порядка 50 Гб данных), залить их в новый instance и т.д. - короче простой невероятный и недопустимый.
Поэтому пришла в голову мысль организовать реплику: master 5.5 -> slave 5.6, в связи с чем вопросы:
1. возможно ли это в случае обычного mysql с полным доступом к конфигам?
2. возможно ли это в случае RDS (любым способом, т.к через веб-интерфейс явно невозможно создавать slave другой версии)?
3. может есть какие-то другие способы работы с подобными базами?
Очень важно не потерять данные, а в БД часто производится запись.
Если кто имеет опыт, какие-то best practices - буду рад их услышать.

★★★★★

Последнее исправление: cetjs2 (всего исправлений: 1)

Я думаю тебе надо смотреть в сторону Percona XtraBackup

Percona XtraBackup makes MySQL hot backups for all versions of Percona Server, MySQL, MariaDB®, and Drizzle. It performs streaming, compressed, and incremental backups to your MySQL backup database.

blind_oracle ★★★★★
()
Ответ на: комментарий от blind_oracle

к сожалению не работает с RDS, ему нужны файлы.

Komintern ★★★★★
() автор топика

Вообще, не исключено, что можно просто обновить, и всё. После чего сказать «mysql_upgrade», и нужные таблицы подрихтуются. Но, естественно, надо почитать/потестировать предварительно. И соломки подстелить в виде бакапа. 5.5 -> 5.6 я обновлять не пробовал, но с 5.1 до 5.5 ни разу проблем не встретил. В конкретных версиях если, то не так давно делал 5.1.62 -> 5.5.30 без промежуточных версий даже.

AS ★★★★★
()

Если slave более новой версии обычно проблем нет. В MySQL документации пишут следующее:

MySQL supports replication from one major version to the next higher major version. For example, you can replicate from a master running MySQL 4.1 to a slave running MySQL 5.0, from a master running MySQL 5.0 to a slave running MySQL 5.1, and so on.

Тут пишут что можно: http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Overview.Replication.html

You can use replication to import data from an instance of MySQL running outside of Amazon RDS to an instance of MySQL running in Amazon RDS. You can also export data from an instance in Amazon RDS to an instance outside of Amazon RDS.

Уточню, подразумевается именно онлайн репликация (read replica), бэкапы на S3 и point-in-time снапшоты там штатно поддерживаются но все естественно упирается в то что придется еще платить за 50+ Гб S3 для бэкапа и снапшотов что может быть недешево.

hidden_4003
()
Последнее исправление: hidden_4003 (всего исправлений: 1)
Ответ на: комментарий от hidden_4003

бэкапы на S3

Снапшоты делаются на S3, но к данным вроде нет доступа.

goingUp ★★★★★
()
Ответ на: комментарий от goingUp

Зависит сколько траффика оно сгенерирует и будет ли это дешевле штатных бэкапов.

hidden_4003
()
Ответ на: комментарий от hidden_4003

а вот это интересно, почитаю. и да, вопрос «сколько платить» вторичен - главное минимизировать простой и не потерять ни байта данных.

Komintern ★★★★★
() автор топика
Последнее исправление: Komintern (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.