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;