የ XtraBackup መገልገያን በመጠቀም MySQL ምትኬን መፍጠር

ፐርኮና ኤክስትራባክፕ - የውሂብ ጎታዎችን ሞቅ ያለ ምትኬ ለማስቀመጥ የሚያስችል መሳሪያ ነው MySQL.

የውሂብ ምትኬ በሚፈጥሩበት ጊዜ ምንም ሰንጠረዦች አይቆለፉም፣ እና ስርዓትዎ ያለምንም ገደቦች መስራቱን ይቀጥላል።

ኤክስትራባክ 2.4 የጠረጴዛዎችን ምትኬ ቅጂዎች መፍጠር ይችላል InnoDBXtraDB и ማይሳም በአገልጋዮች ላይ MySQL 5.11፣ 5.5፣ 5.6 እና 5.7እንዲሁም በአገልጋዩ ላይ Conርኮዋ ለ MySQL с XtraDB.

አብሮ ለመስራት MySQL 8.x ስሪት ጥቅም ላይ መዋል አለበት ኤክስትራባክ 8.x. ይህ ጽሑፍ የሚወያየው ስለሱ ብቻ ነው ኤክስትራባክ 2.4.

ዋነኛው ጠቀሜታ ኤክስትራባክ ይህ መገልገያ በጣም የተጫኑ የመጠባበቂያ ቅጂዎችን ለመፍጠር ተስማሚ መሆኑ ነው አገልጋዮችእንዲሁም ዝቅተኛ የግብይቶች ብዛት ላላቸው ስርዓቶች።

የ MySQL የውሂብ ጎታዎችዎ አጠቃላይ መጠን ጉልህ ከሆነ (በአስር ጊጋባይት)፣ መደበኛ መገልገያው mysqldump የመጠባበቂያ ቅጂ በፍጥነት እንዲፈጥሩ አይፈቅድልዎትም፣ እና ቆሻሻ መጣያውን ወደነበረበት መመለስ ረጅም ጊዜ ይወስዳል።

ቅንብር

ቅንብር ኤክስትራባክ ከማከማቻው ተስማሚ ፐርኮና።

የሚከተሉትን ትዕዛዞች በቅደም ተከተል ያሂዱ:

wget https://repo.percona.com/apt/percona-release_latest.$(lsb_release -sc)_all.deb

sudo dpkg -i percona-release_latest.$(lsb_release -sc)_all.deb

sudo apt-get update 

sudo apt-get install percona-xtrabackup-24

2ከተጫነ በኋላ ትዕዛዙን ያሂዱ xtrabackup -v. መገልገያው በአገልጋዩ ላይ በትክክል እየሰራ መሆኑን ማረጋገጥ አስፈላጊ ነው። በዚህም ምክንያት፣ እንደዚህ ያለ ነገር በማያ ገጹ ላይ ይታያል፡

xtrabackup: የታወቁ የአገልጋይ ክርክሮች: - datadir=/var/lib/mysql - tmpdir=/tmp - server-id=1 - logbin=/var/log/mysql/mysql-bin.log - innodbbufferpoolsize=16384M - innodbfilepertable=1 - innodbflushmethod=Odirect - innodbflushlogattrxcommit=0xtrabackup ስሪት 2.4.20 በ MySQL አገልጋይ 5.7.26 ላይ የተመሠረተ Linux (x8664) (የክለሳ መለያ ቁጥር፡ c8b4056)

የ XtraBackup መገልገያን በመጠቀም MySQL ምትኬን መፍጠር

የመዳረሻ መብቶች፣ ፈቃዶች እና መብቶች 

ኤክስትራባክፕ የሚከተሉትን ማድረግ መቻል አለበት፦

  • ከ MySQL አገልጋይዎ ጋር ይገናኙ።

  • ወደ ማውጫው የመዳረሻ መብቶች ይኑርዎት ዳታዳይር

  • የመጠባበቂያ ቅጂ በሚፈጥሩበት ጊዜ፣ ለተጠቀሰው መለኪያ የመጻፍ መብቶች ሊኖሩዎት ይገባል። ዒላማ-ዳይር ካታሎግ።

ዳታዲር ምንድን ነው?

ዳታዳይር - ይህ የውሂብ ጎታ አገልጋዩ የሚገኝበት ማውጫ ነው። MySQL ውሂብ ያከማቻል። ሁሉም የውሂብ ጎታዎች፣ ሁሉም ሰንጠረዦች እዚያ ይገኛሉ። በአብዛኛዎቹ ስርጭቶች Linux በነባሪነት፣ ይህ ማውጫ /var/lib/mysql.

የታለመ-ዲር ማውጫ ምንድን ነው?

ዒላማ-ዳይር — ይህ የመጠባበቂያ ቅጂው የሚቀመጥበት ማውጫ ነው።

የውሂብ ጎታ ተጠቃሚው ለሰንጠረዦች እና ለመረጃ ቋቶች ምትኬ እንዲቀመጥላቸው የሚከተሉትን የመዳረሻ መብቶች ይፈልጋል፡

  • ሰንጠረዦችን እንደገና ጫን እና ቆልፍ

  • የማባዛት ደንበኛ

  • የጠረጴዛ ቦታ ፍጠር

  • PROCESS

  • ሱፐር

  • ፍጠር

  • INSERT

  • ይምረጡ

ውቅር 

ውቅር ኤክስትራባክ ከመደበኛ MySQL መለኪያዎች ጋር ተመሳሳይ የሆኑ አማራጮችን በመጠቀም ይከናወናል።

ይህ ምን ማለት ነው?

የውቅር መለኪያዎች በትእዛዝ መስመሩ ላይ ወይም በዲቢኤምኤስ ውቅር ፋይል ውስጥ ሊገለጹ ይችላሉ፣ ለምሳሌ በ /etc/my.cnf.

የኤክስትራባክ መገልገያ ከተጀመረ በኋላ ክፍሎችን ያነባል [mysqld] и [xtrabackup] ከ MySQL ውቅር ፋይሎች። ይህ የሚደረገው መገልገያው የDBMS ቅንብሮችዎን ለእያንዳንዱ ምትኬ እራስዎ ሳይገልጹ እንዲጠቀም ነው።

ለምሳሌ፣ ትርጉሙ ዳታዳይር እና አንዳንድ መለኪያዎች InnoDB ከDBMS ውቅርዎ XtraBackup እናገኛለን።

በXtraBackup ክፍል ውስጥ ያሉትን ቅንብሮች መሻር ከፈለጉ [mysqld]ከዚያ በክፍል ውስጥ ባለው የውቅር ፋይል ውስጥ ብቻ ይጥቀሷቸው [xtrabackup]በኋላ ላይ ስለሚነበቡ፣ ቅድሚያ የሚሰጧቸው ነገሮች ከፍ ያሉ ይሆናሉ።

ምንም አይነት መለኪያዎችን ማከል አያስፈልግዎትም my.cnfሁሉም አስፈላጊ መለኪያዎች በትእዛዝ መስመሩ ላይ ሊገለጹ ይችላሉ። ብዙውን ጊዜ፣ በክፍሉ ውስጥ በቀላሉ ሊቀመጥ የሚችለው ብቸኛው ነገር [xtrabackup] ያንተ my.cnf - ይህ መለኪያ ነው ዒላማ_ዲር, ይህም በነባሪነት ምትኬዎች የሚቀመጡበትን ማውጫ ይገልጻል። ሆኖም ግን፣ ይህ አያስፈልግም።

የመጠባበቂያ ቅጂውን የያዘውን ወደ ማውጫው የሚወስደውን መንገድ የመግለጽ ምሳሌ my.cnf:

[xtrabackup]
target_dir = /data/backups/mysql/

የመጠባበቂያ ፈጠራ ስክሪፕት

ምትኬ ለመፍጠር የሚከተለውን ስክሪፕት መጠቀም ይችላሉ፡

#!/bin/bash

# Удаляем данные в каталоге бекапа
rm -rf /mysql/backup

# Cоздаём бекап
xtrabackup --user=xtrabackup 
 --password=xxxx_SECRET_xxxx 
 --backup 
 --target-dir=/mysql/backup

# Выполняем подготовку бекапа для развёртывания
xtrabackup --prepare --target-dir=/mysql/backup

# Создаём архив
tar -zcvf /home/developer/dumps/xtrabackup-all-dbs-"$(date +%F-%H:%M:%S)".gz /mysql/backup

ስክሪፕት ሲተገበር ምን ይሆናል?

የምናደርገው የመጀመሪያው ነገር ምትኬውን የምናስቀምጥበትን ማውጫ ማጽዳት (መሰረዝ) ነው፡

rm -rf /mysql/backup.

ከዚያም መገልገያውን በመጠቀም ኤክስትራባክ የመጠባበቂያ ቅጂ ይፍጠሩ እና ያስቀምጡት /mysql/ምትኬ/:

xtrabackup --user=xtrabackup --password=xxxxz1cYf95550Gc6xxxxxxxpE3rB03xxxx --backup --target-dir=/mysql/backup

ቀደም ሲል በ MySQL ውስጥ ተጠቃሚ ፈጥረናል። xtrabackup ከሚያስፈልጉት መብቶች ጋር። መለኪያውን በመጠቀም target-dir ምትኬው የሚቀመጥበትን ማውጫ እንገልፃለን።

አንድ አስፈላጊ ነጥብ!

እባክዎን የስክሪፕት መስመሩን ልብ ይበሉ፦

xtrabackup --prepare --target-dir=/mysql/backup

በካታሎግ ውስጥ ያለ ውሂብ /mysql/ምትኬ እስኪዘጋጁ ድረስ ወጥነት የላቸውም። 

ዋናው ነገር ፋይሎቹ በሚገለበጡበት ጊዜ ለውጦች ሊከሰቱ ይችሉ ነበር። xtrabackup --prepare --target-dir=/mysql/backup የመጠባበቂያ ውሂብን በጊዜ ሂደት ፍጹም ወጥነት ያለው ያደርገዋል።

የውሂብ ዝግጅት ስራውን በማንኛውም ማሽን ላይ ማከናወን ይችላሉ። የምንጭ DBMSን በሚያስተናግደው አገልጋይ ላይ ማድረግ አያስፈልግም። ምትኬውን ወደ ኢላማው አገልጋይ መቅዳት እና እዚያ ማዘጋጀት ይችላሉ።

የመጨረሻው የምናደርገው ነገር የመጠባበቂያ ቅጂያችንን የምናስቀምጥበት ማህደር መፍጠር ነው፡

tar -zcvf /home/developer/dumps/xtrabackup-all-dbs-«$(date % F% H% M% S)».gz /mysql/backup

ምትኬን ወደነበረበት መመለስ 

ምትኬን ወደ ኢላማው አገልጋይ ከመመለስዎ በፊት፣ መረጃው የዝግጅት ደረጃ ማለፍ አለበት። ይህንን እንዴት ማድረግ እንደሚቻል መመሪያዎችን ለማግኘት ከላይ ይመልከቱ።

የውሂብ መልሶ ማግኛ ሂደቱ በጣም ቀላል ነው። ምትኬውን ከማህደሩ ውስጥ ማውጣት እና ውሂቡን በ ውስጥ መተካት ብቻ ያስፈልግዎታል። ዳታዳይር.

በ datadir ውስጥ ውሂብን እንዴት መተካት እንደሚቻል?

ሁለት አማራጮችን እንመልከት።

አማራጭ 1

መገልገያውን ይጠቀሙ ኤክስትራባክ. አማራጩን መግለጽ አለብዎት —copy-baсk

ከታች ያለው ትዕዛዝ ምትኬውን ወደ ያንቀሳቅሳል ዳታዳይር ዒላማ አገልጋይ፦

xtrabackup --copy-back --target-dir=/mysql/backup

አማራጭ 2

በተለየ መንገድ ማድረግ እና ያለ መገልገያ ማድረግ ይችላሉ። ኤክስትራባክ.

ማድረግ ያለብዎት ምትኬውን ወደ ቅጂ መቅዳት ብቻ ነው ዳታዳይርይህንን በ እገዛ ማድረግ ይችላሉ cp ወይም rsync.

የመጠባበቂያ መልሶ ማግኛ ሂደቱ የማውጫውን ይዘቶች መተካት ብቻ እንደሆነ መረዳት አስፈላጊ ነው። ዳታዳይር.

ምትኬን ወደ ኢላማው አገልጋይ ወደነበረበት መመለስ ከመጀመርዎ በፊት የሚከተሉትን ማድረግ አለብዎት:

  • የ MySQL አገልጋይን አቁም።

  • አቃፊን አጽዳ ዳታዳይር ወይም ይዘቱን ወደ ሌላ ቦታ ካታሎግ ማዛወር ዳታዳይር ባዶ መሆን አለበት።

የውሂብ ዝውውሩ ከተጠናቀቀ በኋላ፣ ዳታዳይር የ MySQL አገልጋይ ሊጀመር ይችላል።

ጥቅም ላይ የዋሉ ቁሳቁሶች

ኦፊሴላዊ ሰነዶች Conርኮዋ ኤክስትራባክ.

ምንጭ: hab.com

በDDoS ጥበቃ፣ VPS VDS አገልጋዮች ለጣቢያዎች አስተማማኝ ማስተናገጃ ይግዙ 🔥 አስተማማኝ የድር ጣቢያ ማስተናገጃ በዲዶኤስ ጥበቃ፣ በቪፒኤስ ቪዲኤስ አገልጋዮች ይግዙ | ProHoster