MySQL duomenų bazių atsarginių kopijų kūrimas ir atkūrimas ("Windows" versija)
Darbo aplinka
- MySQL
-
- MySQL 8.0 bendruomenės leidimas
- Windows
-
- Langai 11
Būtinosios sąlygos
- MySQL
-
- MySQL 8.0
- Windows
-
- Langai 11
- Langai 10
- "Windows" serveris
-
- "Windows Server 2022"
- "Windows Server 2019"
- "Windows Server 2016"
- "Windows Server 2012 R2"
Prielaida
- Įdiegta MySQL duomenų bazė.
- Duomenų bazė, kurios atsarginę kopiją reikia sukurti, jau yra.
- Nustatėte aplinkos kintamuosius, kad galėtumėte paleisti mysql iš komandų eilutės.
Kokie yra atsarginių kopijų tipai?
Nors čia išsamiai neaptarta, MySQL turi šių tipų atsargines kopijas:
Atsarginės kopijos komandosAtsarginės kopijos | duomenų tipaiPastabos | |
---|---|---|
MySQL Dump | Loginės atsarginės kopijos | Senas atsarginis metodas. GUI taip pat tai naudoja |
MySQL siurblys | Loginės atsarginės kopijos | Patobulinta mysqldump versija |
"MySQL Shell Instance Dump Utility" ir "Dump Loading Utility" | Loginės atsarginės kopijos | Šiuo metu naujausia loginė atsarginė kopija |
Percona XtraBackup | Fizinės atsarginės kopijos | Trečiųjų šalių fizinės atsarginės kopijos palaikymas |
KLONUOTI PAPILDINĮ | Fizinės atsarginės kopijos | MySQL oficialios fizinės atsarginės kopijos. Tačiau turite pridėti priedą. |
Duomenų bazių atsarginių kopijų kūrimas naudojant GUI (MySQL Workbench)
Jei norite saugiai veikti GUI nenaudodami komandų, galite sukurti atsarginę kopiją naudodami "MySQL Workbench". "MySQL Workbench" atliekamos atsarginės kopijos tipas bus "mysqldump".
Paleiskite "MySQL" darbastalį.
Pasirinkite ryšį, kuriame yra duomenų bazė, kurios atsarginę kopiją norite sukurti.
Kai bus kuriama duomenų bazės atsarginė kopija, kairėje esančioje naršyklėje pasirinkite skirtuką Administravimas, tada pasirinkite Duomenų eksportavimas.
Atidaromas ekranas Duomenų eksportavimas. Ekranas yra pakankamai platus, todėl išplėskite langą, kol apatiniame dešiniajame kampe pamatysite mygtuką "Pradėti eksportavimą".
Pirmiausia pasirinkite duomenų bazes, kurių atsargines kopijas norite sukurti. Taip pat galite pasirinkti daugiau nei vieną.
Skiltyje "Eksportuotini objektai" taip pat galite pasirinkti kurti atsargines procedūrų ir paleidiklių kopijas. Šis laukas yra neprivalomas.
"Eksportavimo parinktyse" galite pasirinkti šias dvi parinktis.
Tipo | aprašymas |
---|---|
Eksportuoti į Dump Project aplanką | Išvestis į nurodytą aplanką kaip lentelė arba procedūros failas. |
Eksportuoti į savarankišką failą | Įdėkite viską į vieną failą ir išvestį. |
Nesvarbu, kokiu būdu išvesite. Aukščiau pateiktą pasirinkimą lengva pašalinti, jei norite atkurti tik konkrečią lentelę. Toliau pateiktas pasirinkimas išveda į vieną failą, todėl lengviau perkelti ir tvarkyti failus kaip duomenų bazės vienetą. Šiuo atveju pasirinkau šiuos dalykus.
Nustatę nustatymus, apatiniame dešiniajame kampe spustelėkite mygtuką "Pradėti eksportą", kad pradėtumėte eksportą.
Eksportavimas pradedamas ir baigiamas.
Jei išvesite jį kaip vieną failą, jis atrodys taip:
Jei eksportuosite į aplanką, jis atrodys taip:
Duomenų bazės atkūrimas naudojant GUI (MySQL Workbench)
Atidarykite "MySQL Workbench", pasirinkite ryšį, kairėje esančioje naršyklėje pasirinkite skirtuką Administravimas ir pasirinkite Duomenų importavimas / atkūrimas. Kaip sakoma "Importuoti / atkurti", galite sukurti naują duomenų bazę iš eksportuoto failo arba perrašyti pradinę duomenų bazę.
Išplėskite langą, kol apatiniame dešiniajame kampe pamatysite mygtuką "Pradėti importavimą".
Pasirinkite "Importavimo parinktys" pagal eksportuojamą failo formatą. Kadangi šį kartą eksportavau kaip vieną failą, žemiau pasirinkau "Importuoti iš savarankiško failo" ir nurodžiau eksportuotą failą.
Pasirinkite schemą (duomenų bazę), į kurią norite atkurti. Galite atkurti esamą duomenų bazę arba atkurti ją kaip naują duomenų bazę naudodami dešinėje esantį mygtuką "Naujas".
Nurodę specifikacijas, spustelėkite apačioje dešinėje esantį mygtuką "Pradėti importavimą", kad pradėtumėte atkūrimą.
Kai atkūrimas bus baigtas, įsitikinkite, kad jūsų duomenys grįžo.
Sukurkite paskyrą duomenų bazės atsarginei kopijai kurti pagal komandą
Nėra jokių problemų, jei vykdote vieną komandą ir kuriate atsarginę jos kopiją, tačiau, pavyzdžiui, jei iš anksto paruošiate komandą kaip failą ir ją vykdote, slaptažodį turite parašyti paprastu tekstu, todėl saugiau sukurti atskirą paskyrą atsarginės kopijos vykdymui.
Kai kurios atsarginėms kopijoms kurti reikalingos teisės gali padidėti arba sumažėti, atsižvelgiant į reikalingą informaciją.
- ĮVYKIS
- UŽRAKINTI LENTELES
- ŽYMĖTI
- RODYTI RODINĮ
Jei sukursite jį naudodami komandą, jis atrodys taip. Naudokite MySQL komandų eilutės įrankį.
create user '<ユーザー名>'@'<ホスト名>' identified by '<パスワード>';
GRANT EVENT, LOCK TABLES, SELECT, SHOW VIEW ON <データベース名>.* TO '<ユーザー名>'@'<ホスト名>';
flush privileges;
pavyzdys
create user 'backup_user'@'localhost' identified by 'password';
GRANT EVENT, LOCK TABLES, SELECT, SHOW VIEW ON test_database.* TO 'backup_user'@'localhost';
flush privileges;
Aplanko teisės atsarginės kopijos paskirties vietai
Aplanko, kuriame išsaugotas atsarginės kopijos failas, leidimai turi būti nustatyti taip pat, kaip ir komandos vykdymo leidimai. Jei komandą vykdote su administratoriaus teisėmis, jums nereikia nustatyti jokių papildomų teisių aplanke.
Duomenų bazės atsarginės kopijos kūrimas naudojant komandą (mysqldump)
Yra keletas atsarginių kopijų pagal komandą, tačiau šį kartą mes sukursime atsarginę kopiją naudodami "mysqldump", kuris buvo naudojamas ilgą laiką ir yra stabilus.
Dešiniuoju pelės mygtuku spustelėkite meniu Pradėti, kad paleistumėte terminalą (komandų eilutę). Atminkite, kad tai nėra "MySQL 8.0 komandų eilutės klientas".
Galite sukurti atsarginę jos kopiją naudodami šią komandą:
mysqldump -u <ユーザー名> -p<パスワード> --no-tablespaces --single-transaction --triggers --routines --events --default-character-set=utf8 <データベース名> > "<バックアップファイルパス>"
pavyzdys
mysqldump -u backup_user -ppassword --no-tablespaces --single-transaction --triggers --routines --events --default-character-set=utf8 test_database > "C:\Temporary\Backup.sql"
--default-character-set=utf8
Jei nurodysite tą patį simbolio kodą, kaip ir kurdami atsarginę kopiją GUI, jis bus toks pat, kaip kuriant atsarginę kopiją GUI. Tokiu būdu taip pat galite importuoti jį į GUI.- Neįtraukite tarpo tarp slaptažodžio lauko ir
-p
slaptažodžio.- Jei taip pat norite išvesti lentelės erdvės informaciją,
--no-tablespaces
pašalinkite . Tokiu atveju veikiančio vartotojo leidimai turi būti .PROCESS
Nurodytoje vietoje bus sukurtas atsarginis failas.
Duomenų bazės atkūrimas naudojant komandą (mysqldump)
Failai, kurių atsarginės kopijos sukurtos mysqldump, yra tokio formato, kurį galima vykdyti SQL, todėl tereikia vykdyti tikslinį SQL. Manau, kad dauguma atkūrimų atliekami rankiniu būdu, todėl nėra jokių problemų, jei paleisite jį kaip pagrindinę paskyrą.
Jei norite jį paleisti iš komandos, paleiskite ją komandų eilutėje, o ne "PowerShell". Taip yra todėl, kad simbolio negalima naudoti <
"PowerShell".
Vykdykite šią komandą:
mysql -u root -p<root のパスワード> <データベース名> < <バックアップした SQL のファイルパス>
pavyzdys
mysql -u root -ppassword test_database < C:\Temporary\Backup.sql
Automatizuotos duomenų bazių atsarginės kopijos
"Windows" sistemoje įprasta naudoti užduočių planuoklį. Pirmiausia sukurkite paketinį failą. Sukurkite šikšnosparnio failą, įveskite turinį, kurio atsarginę kopiją sukūrė komanda, ir išsaugokite jį. Simbolių kodavimas išsaugomas naudojant Shift-JIS. Paketinio failo vieta ir failo pavadinimas yra savavališki.
Užsiregistruokite užduočių planuoklyje. Dešiniuoju pelės mygtuku spustelėkite meniu Pradėti ir pasirinkite Kompiuterio valdymas.
Kairėje esančiame meniu pasirinkite Kompiuterio valdymas > Sistemos įrankiai > Task Scheduler > Task Scheduler Library. Dešinėje esančiame meniu pasirinkite "Sukurti užduotį...".
Konfigūruokite skirtuką Bendra. Užduočių sąraše bus rodomas "Vardas", todėl įveskite lengvai suprantamą pavadinimą. Saugos parinktyse pažymėkite "Vykdyti nepriklausomai nuo to, ar vartotojas yra prisijungęs, ar ne".
Skirtuke "Trigger" galite nustatyti, kada atlikti atsarginę kopiją. Nustatykite šį nustatymą pagal savo veiklą.
Skirtuke "Operacija" nustatykite, kad jis paleistų ką tik sukurtą paketinį failą.
Nustatę kiekvieną iš jų, patvirtinkite mygtuku Gerai.
Įveskite slaptažodį, kad užsiregistruotumėte paleisti nurodytoje paskyroje.
Po to patikrinkite, ar atsarginė kopija bus vykdoma nurodytu laiku.