Aus diesem Grund könnten Sie eine andere DB-Infrastruktur verwenden.
Aufgrund Ihrer oben genannten Bedürfnisse habe ich einen Vorschlag, der jedoch einen kleinen Kompromiss erfordern würde.
VORSCHLAG # 1 : Verwenden Sie MySQL Replication auf Server, aber auf einer anderen Festplatte
Ihr zweites Bedürfnis ( No need of real-time replication
) müsste in diesem Vorschlag einen kleinen Rückschritt machen. Da Sie eine externe Festplatte haben, die groß genug für XtraBackup ist, können Sie sie als Datenverzeichnis für eine zweite Instanz von MySQL auf derselben Box verwenden.
Ich habe meinen eigenen Dienst per Skript erstellt, um eine dedizierte MySQL-Instanz für die Ports 3307 - 3399 bereitzustellen. Hier sind meine früheren Beiträge dazu:
VORSCHLAG # 2 : Verwenden Sie MySQL Replication auf dem anderen Server
Low Cost
Wenn Sie unter Berücksichtigung Ihres ersten Bedarfs ( ) Zugriff auf einen Commodity-Server mit ausreichend Speicherplatz haben, richten Sie MySQL Replication auf diesem externen Server ein. Auf diese Weise können Sie Backups auf dem Slave wie folgt ausführen
STOP SLAVE;
- XtraBackup
START SLAVE;
Sie können dies ohne Auswirkungen (keine Serverlast, keine Festplatten-E / A) auf den Master tun
VORSCHLAG 3 : Parallele mysqldumps
Sie können parallele mysqldumps von Datenbanken oder Tabellen einrichten. Dies kann zu einem kürzeren Zeitfenster für Sicherungen führen. XtraBackup führt im Wesentlichen eine Transaktionssicherung mit Prüfpunkt und zeitkritischen Vorgängen durch, sodass der Zeitpunkt der Sicherung nach Abschluss der Sicherung liegt. Mit parallelen mysqldumps auf einem Slave, der nicht repliziert, erhalten Sie Backups, deren Zeitpunkt der Beginn des Backups ist. Mysqldump auf einem gestoppten Slave auszuführen, wäre unabhängig von der Speicher-Engine. Mit anderen Worten, es spielt keine Rolle, ob Tabellen InnoDB oder MyISAM sind.
Wenn Sie dies auf VORSCHLAG 1 anwenden, entstehen Serverlast und Festplatten-E / A, da sich sowohl Master als auch Slave auf demselben Computer befinden.
Wenn Sie dies auf VORSCHLAG 2 anwenden, gibt es keine Strafe für den Meister. Sie können Backups nach Belieben auf dem Slave ausführen. Sie müssen sich auch nicht mit dem Sperren von MyISAM-Tabellen befassen.
Bitte lesen Sie meine früheren Beiträge zum parallelen Ausführen von mysqldumps
STOP SLAVE;
wenn Seconds_Behind_Master 0 ist.