Kā pārsūtīt visas MySQL datu bāzes no vecā uz jauno serveri


MySQL/MariaDB datu bāzes pārsūtīšana vai migrēšana starp serveriem parasti prasa tikai dažas vienkāršas darbības, taču datu pārsūtīšana var aizņemt kādu laiku atkarībā no datu apjoma, kuru vēlaties pārsūtīt.

Šajā rakstā jūs uzzināsiet, kā visas MySQL/MariaDB datu bāzes pārvietot vai migrēt no vecā Linux servera uz jaunu serveri, veiksmīgi to importēt un apstiprināt, ka dati tur ir.

  • Pārliecinieties, vai abos serveros ir instalēta viena un tā pati MySQL versija ar vienādu izplatīšanu.
  • Pārliecinieties, vai abos serveros ir pietiekami daudz brīvas vietas, lai glabātu datu bāzes izgāztuvi un importēto datu bāzi.
  • Nekad nedomājiet par datu bāzes direktorija data pārvietošanu uz citu serveri. Nekad nejaucieties ar datu bāzes iekšējo struktūru, ja jūs to darāt, nākotnē saskarsieties ar problēmām.

Eksportējiet MySQL datu bāzes uz dump failu

Vispirms sāciet, piesakoties savā vecajā serverī, un pārtrauciet pakalpojumu mysql/mariadb, izmantojot komandu systemctl, kā parādīts.

# systemctl stop mariadb
OR
# systemctl stop mysql

Pēc tam, izmantojot komandu mysqldump, visas savas MySQL datu bāzes noglabājiet vienā failā.

# mysqldump -u [user] -p --all-databases > all_databases.sql

Kad izgāztuve ir pabeigta, jūs esat gatavs pārsūtīt datu bāzes.

Ja vēlaties izmest vienu datu bāzi, varat izmantot:

# mysqldump -u root -p --opt [database name] > database_name.sql

Pārsūtīt MySQL datu bāzes izgāzt failu uz jaunu serveri

Tagad izmantojiet komandu scp, lai pārsūtītu datu bāzes izgāzt failu uz jauno serveri mājas direktorijā, kā parādīts.

# scp all_databases.sql [email :~/       [All Databases]
# scp database_name.sql [email :~/       [Singe Database]

Pēc savienojuma izveidošanas datu bāze tiks pārsūtīta uz jauno serveri.

Importējiet MySQL datu bāzes izgāzt failu uz jaunu serveri

Kad MySQL dump fails ir nodots jaunajam serverim, varat izmantot šo komandu, lai visas savas datu bāzes importētu MySQL.

# mysql -u [user] -p --all-databases < all_databases.sql   [All Databases]
# mysql -u [user] -p newdatabase < database_name.sql      [Singe Database]

Kad importēšana ir pabeigta, varat pārbaudīt abu serveru datu bāzes, izmantojot šādu komandu mysql apvalkā.

# mysql -u user -p
# show databases;

Pārsūtīt MySQL datu bāzes un lietotājus uz jaunu serveri

Ja vēlaties pārvietot visas MySQL datu bāzes, lietotājus, atļaujas un datu struktūras veco serveri uz jaunu, varat izmantot komandu rsync, lai visu saturu no mysql/mariadb datu direktorija nokopētu uz jaunu serveri, kā parādīts attēlā.

# rsync -avz /var/lib/mysql/* [email :/var/lib/mysql/ 

Kad pārsūtīšana ir pabeigta, varat iestatīt mysql/mariadb datu direktorijas īpašumtiesības uz lietotāju un grupēt mysql, pēc tam veiciet direktoriju sarakstu, lai pārbaudītu, vai visi faili ir pārsūtīti.

# chown mysql:mysql -R /var/lib/mysql/
# ls  -l /var/lib/mysql/

Tas ir viss! Šajā rakstā jūs uzzinājāt, kā viegli migrēt visas MySQL/MariaDB datu bāzes no viena servera uz citu. Kā jūs atrodat šo metodi salīdzinājumā ar citām metodēm? Mēs vēlētos dzirdēt no jums, izmantojot zemāk esošo komentāru veidlapu, lai ar mums sazinātos.