MySQL datu bāzu dublēšana un atjaunošana operētājsistēmai Windows

Lapas izveides datums :

Darbības apstiprināšanas vide

MySQL
  • MySQL 8.0 kopienas izdevums
Windows
  • Operētājsistēma Windows 11

Nepieciešamā vide

MySQL
  • MySQL 8.0
Windows
  • Operētājsistēma Windows 11
  • Operētājsistēma Windows 10
Windows serveris
  • Windows Server 2022
  • Windows Server 2019
  • Windows Server 2016
  • Windows Server 2012 R2

Priekšnosacījumu

  • Jāinstalē MySQL datu bāze
  • Dublējamā datu bāze jau pastāv
  • Konfigurējiet vides mainīgos un ļaujiet palaist MySQL no komandu uzvednes

Par dublēšanas veidiem

Es šeit neiedziļināšos, bet MySQL ir šādi dublējumu veidi:

Dublēšanas komandas dublēšanas datu tipa piezīmes
mysqldump Loģiskā dublēšana Veca dublēšanas metode. GUI izmanto arī šo
mysqlpump Loģiskā dublēšana Uzlabota mysqldump versija
MySQL čaulas instances izgāztuves utilīta un izgāztuves ielādes utilīta Loģiskā dublēšana Kā loģisks dublējums, tas ir jaunākais šobrīd
Percona XtraBackup Fiziskā dublēšana Trešo pušu produkti, kas nodrošina fizisku dublēšanu
KLONĒŠANAS SPRAUDNIS Fiziskā dublēšana MySQL oficiālais fiziskais dublējums. Tomēr ir nepieciešami papildu spraudņi

Datu bāzes dublēšana ar GUI (MySQL Workbench)

Ja vēlaties droši darboties GUI, neizmantojot komandas, varat veikt dublēšanu MySQL Workbench. MySQL Workbench veiktais dublējuma veids ir "mysqldump".

Palaidiet MySQL darbgaldu.

Atlasiet savienojumu ar datu bāzi, kuru vēlaties dublēt.

Kad datu bāze ir jādublē, kreisajā pusē esošajā navigatorā atlasiet cilni Administrēšana un atlasiet Datu eksportēšana.

Tiek atvērts ekrāns Datu eksportēšana. Ekrāns ir diezgan liels, tāpēc izvērsiet logu, līdz apakšējā labajā stūrī redzat pogu "Sākt eksportu".

Vispirms atlasiet datu bāzi, kuru vēlaties dublēt. Varat arī atlasīt vairākas iespējas.

Sadaļā "Eksportējamie objekti" varat izvēlēties, vai dublēt procedūras, trigerus utt. Šis vienums nav obligāts.

Sadaļā "Eksportēšanas opcijas" varat izvēlēties kādu no šīm divām opcijām:

apraksts
Veidu
Eksportēšana uz projekta izmetes mapi Izvade kā tabula vai procedūras fails noteiktā mapē.
Eksportēšana uz patstāvīgu failu Ieguliet visu vienā failā un izvadiet to.

Nav svarīgi, kuru jūs izvadāt. Ja izvēlaties iepriekš, tas ir vienkārši, jo to var viegli noņemt, ja vēlaties atjaunot tikai konkrētu tabulu. Tālāk norādītās atlases tiek izvadītas vienā failā, atvieglojot failu pārvietošanu un pārvaldību kā datu bāzes vienību. Šoreiz es esmu izvēlējies sekojošo.

Pēc konfigurēšanas noklikšķiniet uz pogas Sākt eksportēšanu apakšējā labajā stūrī, lai sāktu eksportēšanu.

Eksportēšana sākas un tiek pabeigta.

Ja izvadāt vienā failā, tas izskatīsies šādi:

Ja eksportējat uz mapi, tas izskatīsies šādi:

Datu bāzes atjaunošana ar GUI (MySQL Workbench)

Atveriet MySQL darbgaldu, atlasiet savienojumus, kreisajā pusē esošajā navigatorā atlasiet cilni Administrēšana un atlasiet Datu importēšana / atjaunošana. Kā teikts "Importēt / atjaunot", jūs varat izveidot jaunu datu bāzi no eksportētā faila vai pārrakstīt sākotnējo datu bāzi.

Izvērsiet logu, līdz apakšējā labajā stūrī redzat pogu "Sākt importēšanu".

Lūdzu, izvēlieties "Importa opcijas" atbilstoši eksportētajam faila formātam. Tā kā šoreiz to eksportēju kā vienu failu, zemāk esmu izvēlējies "Importēt no autonomā faila" un norādījis eksportēto failu.

Atlasiet atjaunojamo shēmu (datu bāzi). Varat atjaunot esošu datu bāzi vai atjaunot to kā jaunu datu bāzi, izmantojot pogu "Jauns" labajā pusē.

Pēc norādīšanas noklikšķiniet uz pogas "Sākt importēt" apakšējā labajā stūrī, lai sāktu atkopšanu.

Pārliecinieties, vai dati ir atgriezušies, kad atjaunošana ir pabeigta.

Izveidojiet kontu datu bāzes dublēšanai, izmantojot komandu

Nav problēmu, ja vēlaties palaist komandu, lai dublētu vienu reizi, bet, piemēram, ja iepriekš sagatavojat komandu kā failu un palaižat to, parole ir jāraksta vienkāršā tekstā, tāpēc ir drošāk izveidot atsevišķu kontu dublējuma palaišanai.

Dublēšanai nepieciešamās atļaujas ir šādas, taču tās var palielināties vai samazināties atkarībā no nepieciešamās informācijas.

  • NOTIKUMS
  • SLĒDZENES GALDI
  • ATLASIET
  • RĀDĪT SKATU

Ja jūs to izveidojat ar komandu, tas izskatīsies šādi: Palaidiet to ar MySQL komandrindas rīku.

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

piemērs

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

Mapes atļaujas dublēšanas galamērķim

Mapes, kurā tiek glabāts dublējuma fails, atļaujām jābūt tādām pašām atļaujām kā atļaujai izpildīt komandu. Ja vēlaties palaist komandas ar administratoru atļauju, mapei nav jāiestata papildu atļaujas.

Datu bāzes dublēšana ar komandu (mysqldump)

Ir vairāki komandu dublējumi, bet šoreiz es dublēšu ar veco un stabilo "mysqldump".

Ar peles labo pogu noklikšķiniet uz izvēlnes Sākt un palaidiet termināli (komandu uzvedne). Lūdzu, ņemiet vērā, ka tas nav "MySQL 8.0 komandrindas klients".

To var dublēt, izmantojot šādu komandu:

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

piemērs

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 būs tāds pats rakstzīmju kods kā dublējot GUI. Tas ļauj tos importēt arī GUI.
  • Nelieciet atstarpi starp paroles lauku -p un paroli.
  • Ja vēlaties izvadīt arī tabulas vietas informāciju, lūdzu, --no-tablespaces noņemiet atzīmi no . Tādā gadījumā ir nepieciešamas izpildes lietotāja atļaujas PROCESS .

Norādītajā vietā tiks izveidots dublējuma fails.

Datu bāzes atjaunošana ar komandu (mysqldump)

Faili, kas dublēti ar mysqldump, ir formātā, ko var palaist SQL, tāpēc jums ir jāpalaiž tikai mērķa SQL. Es domāju, ka atjaunošana bieži tiek veikta manuāli, tāpēc ir labi to palaist saknes kontā.

Ja vēlaties to palaist no komandas, palaidiet to komandu uzvednē, nevis PowerShell. Tas ir < tāpēc, ka PowerShell neatļauj simbolus.

Palaidiet šādu komandu:

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

piemērs

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

Automātiska datu bāzes dublēšana

Operētājsistēmā Windows parasti tiek izmantots uzdevumu plānotājs. Sāciet ar pakešu faila izveidi. Izveidojiet sikspārņu failu, ievadiet saturu, kā tas tika dublēts ar komandām, un saglabājiet tos. Saglabājiet rakstzīmju kodus, izmantojot Shift-JIS. Pakešu faila atrašanās vieta un faila nosaukums var būt patvaļīgs.

Reģistrējieties uzdevumu plānotājā. Ar peles labo pogu noklikšķiniet uz izvēlnes Sākt un atlasiet "Pārvaldīt datoru".

Kreisajā izvēlnē atlasiet Datora pārvaldība > Sistēmas rīki > Uzdevumu plānotājs > Uzdevumu plānotāja bibliotēka. Labajā pusē esošajā izvēlnē atlasiet Izveidot uzdevumu.

Iestatiet cilni Vispārīgi. "Nosaukums" tiks parādīts uzdevumu sarakstā, tāpēc ievietojiet viegli saprotamu nosaukumu. Drošības opcijās atzīmējiet "Palaist neatkarīgi no tā, vai lietotājs ir pieteicies vai nē".

Cilnē Trigeri ir iestatīts, kad jāveic dublēšana. Šis iestatījums ir jāiestata atbilstoši jūsu darbībai.

Cilnē Operācijas iestatiet tikko izveidoto pakešu failu palaišanai.

Kad esat iestatījis katru no tiem, apstipriniet tos ar pogu Labi.

Ievadiet paroli, lai reģistrētos, lai darbotos norādītajā kontā.

Tagad pārbaudiet, vai dublējums darbosies norādītajā laikā.