Varmuuskopioi ja palauta MySQL-tietokannat Windowsille

Sivun luontipäivämäärä :

Toiminnan vahvistusympäristö

MySQL
  • MySQL 8.0 Community Edition
Windows
  • Windows 11

Vaadittu ympäristö

MySQL
  • MySQL 8.0
Windows
  • Windows 11
  • Windows 10
Windows-palvelin
  • Windows Server 2022
  • Windows Server 2019
  • Windows Server 2016
  • Windows Server 2012 R2

edellytys

  • MySQL-tietokanta on asennettava
  • Varmuuskopioitava tietokanta on jo olemassa
  • Määritä ympäristömuuttujat ja anna sinun suorittaa MySQL komentokehotteesta

Tietoja varmuuskopiointityypeistä

En mene tässä yksityiskohtiin, mutta MySQL:llä on seuraavan tyyppisiä varmuuskopioita:

Varmuuskopiointikomennon varmuuskopiointitietotyypin huomautuksia
mysql-dumppi Looginen varmuuskopiointi Vanha varmuuskopiointimenetelmä. Myös graafinen käyttöliittymä käyttää tätä
mysqlpump Looginen varmuuskopiointi Parannettu versio mysqldumpista
MySQL Shell Instance Dump -apuohjelma ja Dump Loading Utility Looginen varmuuskopiointi Loogisena varmuuskopiona se on uusin tällä hetkellä
Percona XtraBackup Fyysinen varmuuskopiointi Kolmannen osapuolen tuotteet, jotka mahdollistavat fyysisen varmuuskopioinnin
KLOONIN LAAJENNUS Fyysinen varmuuskopiointi MySQL:n virallinen fyysinen varmuuskopio. Lisälaajennuksia tarvitaan kuitenkin

Tietokannan varmuuskopiointi graafisella käyttöliittymällä (MySQL Workbench)

Jos haluat toimia turvallisesti graafisessa käyttöliittymässä ilman komentoja, voit suorittaa varmuuskopion MySQL Workbenchissä. MySQL Workbenchissä suoritettu varmuuskopiointityyppi on "mysqldump".

Käynnistä MySQL Workbench.

Valitse yhteys tietokantaan, jonka haluat varmuuskopioida.

Kun tietokanta on varmuuskopioitava, valitse vasemmalla olevasta siirtymistoiminnosta Hallinta-välilehti ja valitse Tietojen vienti.

Tietojen vienti -näyttö avautuu. Näyttö on melko suuri, joten laajenna ikkunaa, kunnes näet "Aloita vienti" -painikkeen oikeassa alakulmassa.

Valitse ensin tietokanta, jonka haluat varmuuskopioida. Voit myös valita useamman kuin yhden.

Kohdassa "Vietävät objektit" voit valita, varmuuskopioidaanko myös proseduurit, laukaisimet jne. Tämä kohde on valinnainen.

"Vientiasetukset" -kohdassa voit valita seuraavista kahdesta vaihtoehdosta:

kuvaus
Tyyppien
Vie Dump-projektikansioon Tulos taulukkona tai toimenpidekohtaisena tiedostona tiettyyn kansioon.
Vie itsenäiseen tiedostoon Upota kaikki yhteen tiedostoon ja tulosta se.

Sillä ei ole väliä, kumman tulostat. Jos valitset yllä, se on helppoa, koska voit helposti poistaa sen, jos haluat palauttaa vain tietyn taulukon. Seuraavat valinnat tulostetaan yhteen tiedostoon, mikä helpottaa tiedostojen siirtämistä ja hallintaa tietokantayksikkönä. Tällä kertaa olen valinnut seuraavat.

Kun olet määrittänyt, napsauta Aloita vienti -painiketta oikeassa alakulmassa aloittaaksesi viennin.

Vienti alkaa ja päättyy.

Jos tulostat yhden tiedoston, se näyttää tältä:

Jos viet kansioon, se näyttää tältä:

Tietokannan palauttaminen graafisella käyttöliittymällä (MySQL Workbench)

Avaa MySQL Workbench, valitse yhteydet, valitse vasemmalla olevasta siirtymistoiminnosta Hallinta-välilehti ja valitse Tietojen tuonti/palautus. Kuten sanotaan "Tuo/Palauta", voit luoda uuden tietokannan viedystä tiedostosta tai korvata alkuperäisen tietokannan.

Laajenna ikkunaa, kunnes näet "Aloita tuonti" -painikkeen oikeassa alakulmassa.

Valitse "Tuontiasetukset" viedyn tiedostomuodon mukaan. Koska vein sen tällä kertaa yhtenä tiedostona, olen valinnut alla olevan "Tuo itsenäisestä tiedostosta" ja määrittänyt viedyn tiedoston.

Valitse palautettava rakenne (tietokanta). Voit palauttaa olemassa olevaan tietokantaan tai voit palauttaa sen uutena tietokantana oikealla olevasta "uusi"-painikkeesta.

Kun olet määrittänyt, napsauta "Aloita tuonti" -painiketta oikeassa alakulmassa aloittaaksesi palautuksen.

Varmista, että tietosi ovat palautettuja, kun palautus on valmis.

Luo tili tietokannan varmuuskopiointia varten komennolla

Ei ole ongelmaa, jos haluat suorittaa komennon varmuuskopioimaan kerran, mutta jos esimerkiksi valmistelet komennon tiedostona etukäteen ja suoritat sen, sinun on kirjoitettava salasana pelkkänä tekstinä, joten on turvallisempaa luoda erillinen tili varmuuskopioinnin suorittamista varten.

Varmuuskopiointiin vaadittavat käyttöoikeudet ovat seuraavat, mutta ne voivat kasvaa tai pienentyä tarvittavien tietojen mukaan.

  • TAPAHTUMA
  • LUKITSE PÖYDÄT
  • VALIKOIDA
  • NÄYTÄ NÄKYMÄ

Jos luot sen komennolla, se näyttää tältä: Suorita se MySQL-komentorivityökalulla.

create user '<ユーザー名>'@'<ホスト名>' identified by '<パスワード>';
GRANT EVENT, LOCK TABLES, SELECT, SHOW VIEW ON <データベース名>.* TO '<ユーザー名>'@'<ホスト名>';
flush privileges;

esimerkki

create user 'backup_user'@'localhost' identified by 'password';
GRANT EVENT, LOCK TABLES, SELECT, SHOW VIEW ON test_database.* TO 'backup_user'@'localhost';
flush privileges;

Varmuuskopiointikohteen kansion käyttöoikeudet

Varmuuskopiotiedoston tallennuskansion käyttöoikeuksille on määritettävä samat oikeudet kuin komennon suorittamisoikeuksille. Jos haluat suorittaa komentoja Järjestelmänvalvojat-oikeudella, sinun ei tarvitse määrittää kansiolle lisäoikeuksia.

Tietokannan varmuuskopiointi komennolla (mysqldump)

Komentojen varmuuskopioita on useita, mutta tällä kertaa varmuuskopioin vanhalla ja vakaalla "mysqldumpilla".

Napsauta hiiren kakkospainikkeella Käynnistä-valikkoa ja käynnistä pääte (komentokehote). Huomaa, että se ei ole "MySQL 8.0 -komentoriviasiakas".

Voit varmuuskopioida sen seuraavalla komennolla:

mysqldump -u <ユーザー名> -p<パスワード> --no-tablespaces --single-transaction --triggers --routines --events --default-character-set=utf8 <データベース名> > "<バックアップファイルパス>"

esimerkki

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 on sama merkkikoodi kuin graafiseen käyttöliittymään varmuuskopioituna. Näin voit tuoda ne myös graafiseen käyttöliittymään.
  • Älä laita välilyöntiä salasanakentän -p ja salasanan väliin.
  • Jos haluat tulostaa myös taulukkotilan tietoja, --no-tablespaces poista valinta . Tällöin suorituskäyttäjän käyttöoikeudet PROCESS vaaditaan.

Varmuuskopiotiedosto luodaan määritettyyn sijaintiin.

Tietokannan palauttaminen komennolla (mysqldump)

Mysqldumpilla varmuuskopioidut tiedostot ovat muodossa, joka voidaan suorittaa SQL:ssä, joten sinun tarvitsee suorittaa vain kohde-SQL. Luulen, että palautus tehdään usein manuaalisesti, joten se on hyvä suorittaa päätilillä.

Jos haluat suorittaa sen komennosta, suorita se komentokehotteessa PowerShellin sijaan. Tämä johtuu < siitä, että PowerShell ei salli symboleja.

Suorita seuraava komento:

mysql -u root -p<root のパスワード> <データベース名> < <バックアップした SQL のファイルパス>

esimerkki

mysql -u root -ppassword test_database < C:\Temporary\Backup.sql

Automaattinen tietokannan varmuuskopiointi

Windowsissa on yleistä käyttää tehtävien ajoitusta. Aloita luomalla erätiedosto. Luo lepakkotiedosto, kirjoita sisältö sellaisena kuin se varmuuskopioitiin komennoilla ja tallenna ne. Tallenna merkkikoodit Shift-JIS:llä. Erätiedoston sijainti ja tiedostonimi voivat olla mielivaltaisia.

Rekisteröidy tehtävien ajoitukseen. Napsauta hiiren kakkospainikkeella Käynnistä-valikkoa ja valitse "Hallitse tietokonetta".

Valitse vasemmasta valikosta Tietokoneen hallinta > Järjestelmätyökalut > Tehtävien ajoitus > Tehtävien ajoituskirjasto. Valitse oikealla olevasta valikosta Luo tehtävä.

Aseta Yleiset-välilehti. "Nimi" näkyy tehtäväluettelossa, joten laita helposti ymmärrettävä nimi. Valitse suojausasetuksista "Suorita riippumatta siitä, onko käyttäjä kirjautunut sisään vai ei".

Käynnistimet-välilehti määrittää, milloin varmuuskopiointi suoritetaan. Tämä asetus tulee asettaa toimintasi mukaan.

Määritä Toiminnot-välilehdessä juuri luomasi erätiedosto käynnistettäväksi.

Kun olet asettanut jokaisen niistä, vahvista ne OK-painikkeella.

Anna salasanasi rekisteröityäksesi toimimaan määritetyllä tilillä.

Tarkista nyt, suoritetaanko varmuuskopiointi määritettyyn aikaan.