|
|
Publicerad på 2021-09-30 14:42:47
|
|
|
|

Schemalagd databasbackup är ett måste för varje utvecklare, och regelbunden säkerhetskopiering kan lösa problemet med att av misstag radera viss data, som kan återställas till ett visst ögonblick och minimera förluster.
MySQL erbjuder ett bekvämt verktyg för att exportera databasdata och filer från kommandoraden, mysqldump, som kan exportera databaser via kommandoraden.
Recension:
Denna artikel användsCentOS 7miljö, säkerhetskopiera fjärrdatabaser till den lokala via mysqldump. Om vi kör mysqldump-kommandot direkt kommer felet att vara följande:
-bash: mysqldump: kommando ej hittat Ett öppen källkodspaket för tredje part rekommenderas här, Mydumper, ett högpresterande multitrådat backup- och återställningsverktyg för MySQL och Drizzle. Snabbare än mysqldump-backupen och återställningshastigheten.
GitHub-adress:Inloggningen med hyperlänken är synlig.
Installationskommandot är följande:
På detta sätt kan både mydumper- och myloader-kommandon redan användas, mydumper ansvarar för export och myloader ansvarar för import, som visas i figuren nedan:
mydumperParameterförklaring
-B, --databas Databasen som ska säkerhetskopieras, om inte specificerats, säkerhetskopiera alla bibliotek -T, --tabeller-lista De tabeller som behöver säkerhetskopieras, namnen separeras med kommatecken -o, --outputdir för att säkerhetskopiera katalogen där filen skrivs ut -s, --statement-size Antalet bytes i insert-satsen som genereras av --statement-size är som standard 1000000 -r, --rader När du delar upp en tabell i rader, ange antalet blockrader, och detta alternativ kommer att stänga av --chunk-filesize -F, --chunk-filstorlek När en tabell chunkar efter storlek, anges den angivna blockstorleken i MB -c, --komprimera, komprimera, komprimera utdatafilen -e, --bygg-tomma-filer om tabelldatan är tom, eller om den producerar en tom fil (som standard ingen data, endast tabellstrukturfilen) -x, --regex är samma som det reguljära uttrycket som matchar 'db.table' -i, --ignore-engines ignorerar lagringsmotorer och använder tjock partitionering -m, --no-schemas säkerhetskopierar inte tabellstrukturer -k, --no-locks använder inte tillfälliga delade skrivskyddade lås, och att använda detta alternativ orsakar datainkonsekvenser --less-lock minskar tiden det tar att applicera lås på InnoDB-tabeller (mekaniken bakom detta mönster förklaras i detalj nedan) -l, --long-query-guard Sätt timeout-tiden för långa frågor som blockerar backuper i sekunder, och standarden är 60 sekunder (mydumper avslutas som standard efter timeouten). --döda långa frågor dödar långa frågor (utan att avsluta) -b, --binlogs exporterar binlogs -D, --daemon-aktivera daemon-läge, som säkerhetskopierar databasen vid vissa intervaller utan avbrott -I, --snapshot-interval dump Snapshot interval time, standard 60s, måste vara i daemon-läge -L, --logfile använder loggfilnamnet (loggen som genereras av mydumper) och använder standardutdata som standard --Tz-UTC över tidszoner är ett alternativ som används, men inte förklarats --skip-tz-utc ID --use-savepoints Använd savepoints för att minska låstiden orsakad av metadatainsamling, vilket kräver SUPER-behörigheter --success-on-1146 Inte öka felräkningen och Varning istället för Kritisk om tabellen inte finns -h, --värd Värdnamnet på anslutningen -u, --användaren säkerhetskopiera användaren som användes -p, --lösenord lösenord -P, --port port -S, --socket Socketfilen vid användning av socket-kommunikation -t, --trådar Det standardantal säkerhetskopierade trådar aktiverade är 4 -C, --compress-protocol komprimerar data som kommunicerar med MySQL -V, --versionen visar versionsnumret -v, --utför utdatainformationsmönster, 0 = tyst, 1 = fel, 2 = varningar, 3 = info, standard till 2 myloaderParameterförklaring
-d, --katalogmapp för backupfilen -q, --frågor-per-transaktion Antalet frågor som utförs per sak är som standard 1000 -o, --overwrite-tables Om tabellen som ska återställas finns, släpp tabellen först, använd denna parameter och säkerhetskopiera tabellstrukturen när du behöver säkerhetskopiera -B, --databas Databasen som behöver återställas -e, --enable-binlog möjliggör att binära loggar återställer data -h, --hosthost -u, --användaren återställd -p, --lösenord lösenord -P, --port port -S, --hylsregister -t, --threads återställer antalet använda trådar, standarden är 4 -C, --komprimera-protokoll -V, --versionen visar versionen -v, --verbose output-läge, 0 = tyst, 1 = fel, 2 = varningar, 3 = info, standard till 2 Testbackup
Databasexportkommandot är följande:
Efter körning skapar mydumpern en specificerad katalogadress som vi skickar genom parametrar, vilken innehåller en metadatafil som registrerar det binära loggfilnamnet vid säkerhetskopieringstiden och platsen där loggen skrevs. Varje tabell har två backup-files:database.table-schema.sql en tabellstrukturfil och database.table.sql tabelldatafil.
Planerade reservuppdrag
Referensartiklarna är följande:
Låt oss skapa ett nytt shell-skript som heter :backup_uat.sh, enligt följande:
Bevilja exekveringstillstånd:
Lägg till en uppgift
Uppgiften utförs varje dag klockan 00:10
Ladda om konfigurationen
(Slut)
|
Föregående:Linux-miljögrunder: skillnaden mellan att installera el6, el7 och el8 i rpm-paketNästa:RAID-teknologi förklarad – jämförelse av RAID0, RAID1, RAID3, RAID5, RAID6, RAID10
|