Sobes.tech
Junior

რა არის რეპლიკაცია მონაცემთა ბაზების კონტექსტში?

sobes.tech AI

პასუხი AI-სგან

რეპლიკაცია არის პროცესია, როდესაც მონაცემები ასლს იღებს ერთიდან ან რამდენიმე მეორე მონაცემთა ბაზიდან რეალურ დროში ან მცირე დაგვიანებით.

რეპლიკაციის ძირითადი მიზნები:

  • ხელმისაწვდომობის გაზრდა. მასტერი გაუქმების შემთხვევაში, რეპლიკა შეუძლია დატვირთვის გადაბარება.
  • კითხვის სიჩქარის გაზრდა. კითხვები განაწილებულია მასტერზე და რეპლიკებზე.
  • საკოპირო. რეპლიკა შეიძლება გამოყენებულ იქნას როგორც მონაცემების აქტუალური ასლი.
  • ანალიზი. ანალიტიკური კითხვები შეიძლება შესრულდეს რეპლიკებზე, მასტერს არ აჩენს დატვირთვას.

რეპლიკაციის ტიპები:

  • ასინქრონი. მასტერი არ ელოდება რეპლიკიდან ცვლილებების განხორციელების დადასტურებას. შეიძლება იყოს მცირე დაგვიანება მონაცემებში.
  • სინქრონი. მასტერი ელოდება დადასტურებას რეპლიკიდან. უზრუნველყოფს მონაცემების კონსისტენციას, მაგრამ შეიძლება დაელოდოს წერას მასტერზე.
  • ნახევასინქრონი. კომპრომისი ასინქრონული და სინქრონული შორის. მასტერი ელოდება დადასტურებას მინიმუმ ერთ რეპლიკიდან.

MySQL კონფიგურაციის მაგალითი:

// my.cnf მასტერზე
[mysqld]
server-id = 1
log_bin = mysql-bin

// my.cnf რეპლიკაზე
[mysqld]
server-id = 2
relay_log = mysql-relay-bin
read_only = 1 // მხოლოდ წაკითხვა რეპლიკა

რეპლიკის კონფიგურაცია:

// რეპლიკაზე
CHANGE MASTER TO
MASTER_HOST='<IP_მასტერი>',
MASTER_USER='<repl_user>',
MASTER_PASSWORD='<repl_password>',
MASTER_LOG_FILE='<binlog_ფაილი>', // მიიღება show master status-დან
MASTER_LOG_POS=<პოზიცია>; // მიიღება show master status-დან

START SLAVE;