sql >> Database >  >> RDS >> Mysql

Best practices voor back-ups voor MySQL, MariaDB en Galera Cluster

Hartelijk dank aan iedereen die zich heeft geregistreerd en/of heeft deelgenomen aan het webinar van dinsdag over back-upstrategieën en best practices voor MySQL-, MariaDB- en Galera-clusters onder leiding van Krzysztof Książek, Senior Support Engineer bij Verscheidenenines. Als je de sessie hebt gemist, deze nog een keer wilt bekijken of door de dia's wilt bladeren, ze zijn nu online om te bekijken. Bekijk ook het transcript van de Q&A-sessie hieronder.

Bekijk de herhaling van het webinar

Of u nu een SysAdmin-, DBA- of DevOps-professional bent die MySQL-, MariaDB- of Galera-clusters in productie gebruikt, u moet ervoor zorgen dat uw back-ups worden gepland, uitgevoerd en regelmatig worden getest. Krzysztof deelde gisteren enkele van zijn belangrijkste tips en trucs voor best practices om dat te doen; inclusief een live demo met ClusterControl. Kortom, deze herhaling van het webinar laat u de voor- en nadelen zien van verschillende back-upopties en helpt u degene te kiezen die het beste bij uw omgeving past.

Veel back-upplezier!

Vragen en antwoorden

V. Kunnen we I/O regelen terwijl we de back-ups maken met mysqldump en mysqldumper (ik heb nice eerder gebruikt, maar het was niet nuttig).

A. Theoretisch zou het mogelijk kunnen zijn, hoewel we dat niet echt hebben getest. Als je echt wat beperking wilt toepassen, kun je kijken naar cgroups - het zou je moeten helpen om de I/O-activiteit per proces te beperken.

V. Kunnen we mydumper met ClusterControl gebruiken en is ClusterControl gratis software?

A. We ondersteunen het momenteel niet, maar je kunt het altijd handmatig gebruiken; ClusterControl weerhoudt u er niet van om deze tool te gebruiken. Er is een gratis communityversie van ClusterControl, ja, hoewel de back-upfuncties deel uitmaken van de commerciële versie. Met de gratis communityversie kunt u uw database (clusters) implementeren en bewaken en uw eigen aangepaste databaseadviseurs ontwikkelen. Je hebt ook een proefperiode van een maand die je toegang geeft tot alle functies van ClusterControl. U kunt alle functiedetails hier vinden:https://severalnines.com/pricing

V. Kan xtrabackup werken met data-at-rest-codering?

A. Het kan werken met versleutelde gegevens in MySQL of Percona Server - het is omdat ze alleen tabelruimten versleutelen, die xtrabackup alleen kopieert - het hoeft geen toegang te krijgen tot de inhoud van tabelruimten. MariaDB versleutelt niet alleen tabelruimten, maar bijvoorbeeld ook InnoDB-redo-logs, die moeten worden geopend door xtrabackup - daarom kan xtrabackup niet werken met data-at-rest-codering zoals geïmplementeerd in MariaDB. Hierdoor heeft MariaDB Corporation xtrabackup gevorkt in MariaDB Backup. Deze tool ondersteunt encryptie gedaan door MariaDB.

V. Kunt u mydumper gebruiken voor herstel op een bepaald tijdstip?

A. Ja, dat is mogelijk. mydumper kan GTID-gegevens opslaan, zodat u de laatst toegepaste transactie kunt identificeren en deze kunt gebruiken als startpositie voor het verwerken van binaire logboeken.

V. Is het een probleem als we binaire logs gebruiken met xtrabackup met start-datetime en end-datetime in plaats van start-positie en eind-positie? Op vrijdag maken we een volledige back-up en om de dag een incrementele back-up. Wanneer we moeten herstellen, nemen we de laatste volledige en alle incrementele back-ups en de binaire logboeken van deze dag vanaf 00:00 uur tot NU ... kan er een probleem zijn met apply-log?

A. In het algemeen moet u --start-datetime of --end-datetime niet gebruiken als u een binair logbestand in de database wilt beantwoorden. Het is niet gedetailleerd genoeg - het heeft een resolutie van één seconde en er kunnen in die seconde veel transacties plaatsvinden. Je kunt het gebruiken om het tijdsbestek om handmatig te zoeken te minimaliseren, maar dat is alles. Als u binaire logs opnieuw wilt afspelen, moet u --start-position en --end-position gebruiken. Alleen dit zal precies bepalen vanaf welk evenement je binlogs opnieuw speelt en op welk evenement het zal eindigen.

V. Moet ik de dumpsoftware uitvoeren op de load balancer of op een van de MySQL-knooppunten?

A. Meestal gebruikt u het op MySQL-knooppunten. Sommige tools kunnen alleen dat. Bijvoorbeeld Xtrabackup - u moet het lokaal uitvoeren, op de databasehost. U kunt uitvoer naar een andere locatie streamen, maar deze moet lokaal worden gestart.

V. Kunnen we gedeeltelijke back-ups maken met ClusterControl? En zo ja, hoe kunnen we een back-up terugzetten op een draaiende instantie?

A. Ja, u kunt een gedeeltelijke back-up maken met ClusterControl (u kunt een afzonderlijk schema back-uppen met xtrabackup), maar vanaf nu kunt u geen gedeeltelijke back-up terugzetten op een draaiende instantie. Dit wordt veroorzaakt door het feit dat het schema dat u zou herstellen niet consistent is met de rest van het cluster. Om het consistent te maken, moet het cluster worden opgestart vanaf het knooppunt waarop u een back-up terugzet. Dus technisch gezien draait het knooppunt de hele tijd, maar het is een vrij zware en invasieve operatie. Dit verandert in de volgende versie van ClusterControl waarin je back-ups op een aparte host kunt terugzetten. Vanaf die host zou je dan de inhoud van een hersteld schema kunnen dumpen met behulp van mysqldump (of mydumper) en het terugzetten op een productiecluster.

V. Kun je de opdracht mysqldumper delen?

A. Het is nogal moeilijk om deze vraag te beantwoorden zonder de documentatie te kopiëren en plakken, dus we denken dat het het beste is als we u naar de documentatie verwijzen:https://github.com/maxbube/mydumper/tree/ master/docs

Bekijk de herhaling van het webinar

Gerelateerde whitepaper De DevOps-gids voor databaseback-ups voor MySQL en MariaDBDeze whitepaper bespreekt de twee populairste back-uphulpprogramma's die beschikbaar zijn voor MySQL en MariaDB, namelijk mysqldump en Percona XtraBackup.Download
  1. Django:toestemming geweigerd bij toegang tot database na herstel (migratie)

  2. WEEKDAY() Voorbeelden – MySQL

  3. Lente, Slaapstand, Blob Lazy Loading

  4. Aankondiging van de algemene beschikbaarheid van SQL Safe Backup 8.7.2