ru

MySQL master-slave репликация на офшорных VPS

Single MySQL сервер - точка отказа. Падение диска или сети = простой приложения. MySQL replication позволяет дублировать данные на slave серверы для high availability, distributing read load, и hot backup. Поддерживаем classic statement-based, row-based, semi-synchronous, group replication. Узлы на NVMe VPS в офшоре с оплатой криптой.

Need this done for your project?

We implement, you ship. Async, documented, done in days.

Start a Brief

Архитектура MySQL репликации

MySQL replication работает через binary log (binlog). Master пишет все DML изменения в binlog, slave скачивает binlog через replication thread, и применяет события на свою копию данных. Asynchronous replication - default режим, master не ждёт подтверждения от slaves. Быстро, но возможна потеря данных при падении master до того как binlog скачался. Semi-synchronous - master ждёт подтверждения хотя бы от одного slave что binlog получен (не применён). Меньше throughput, но строже consistency. Synchronous - доступен через Galera Cluster или MySQL Group Replication, master ждёт подтверждения коммита от всех slaves. GTID (Global Transaction ID) - современный режим где каждая транзакция имеет глобальный ID, упрощает failover и migration. Рекомендуется для новых deployments. Мы по умолчанию включаем GTID и row-based binlog format.

Use cases репликации

Репликация решает разные задачи. High availability - 1 master + 2 slaves. При падении master повышаем один slave до нового master через MHA или Orchestrator. Downtime 30-120 секунд. Read scaling - тяжёлые SELECT (отчёты, аналитика, поиск) идут на slaves, OLTP write workload остаётся на master. Throughput чтений масштабируется линейно с числом slaves. Geographic distribution - master в одном дата-центре, slaves в других для близости к пользователям. Чтения локальные, записи через WAN на master. Hot backup - один slave используется исключительно для бэкапа. На нём делаем mysqldump или Percona XtraBackup без влияния на production master. Disaster recovery - delayed slave с задержкой в 1 час позволяет откатить случайный DROP TABLE без full restore из backup. Migration - новый сервер сначала становится slave старого, потом switching production trafic.

Failover и автоматизация

Manual failover MySQL: остановить трафик на master, дождаться апликации последних транзакций на slave, проверить slave status, остановить replication threads, изменить read_only=OFF на slave, обновить connection string в приложении. Это 5-15 минут и риск человеческой ошибки. Orchestrator - open-source tool для автоматизации MySQL topology management. Обнаруживает падение master через heartbeat, выбирает best slave (минимальный lag), проводит failover за 10-30 секунд. MHA (Master High Availability) - старый но проверенный tool. Похожий функционал. ProxySQL или HAProxy - load balancer перед MySQL который автоматически переключает connections при failover. Group Replication - встроенный в MySQL 8.0 механизм с automatic conflict detection и leader election через Paxos. Сложнее в настройке но не требует внешних tools. Мы рекомендуем Orchestrator для классической master-slave топологии и Group Replication для multi-master.

Why Anubiz Host

100% async — no calls, no meetings
Delivered in days, not weeks
Full documentation included
Production-grade from day one
Security-first approach
Post-delivery support included

Ready to get started?

Skip the research. Tell us what you need, and we'll scope it, implement it, and hand it back — fully documented and production-ready.

Anubiz Chat AI

Online