เฮ้! ในฐานะซัพพลายเออร์ของ Tibase ฉันมักถูกถามเกี่ยวกับวิธีตั้งค่าการจำลองแบบใน Tibase เป็นกระบวนการสำคัญที่สามารถเพิ่มประสิทธิภาพ ความพร้อมใช้งาน และความสมบูรณ์ของข้อมูลของฐานข้อมูลของคุณได้อย่างมาก ในบล็อกนี้ ฉันจะแนะนำคุณตลอดขั้นตอนในการตั้งค่าการจำลองแบบใน Tibase และแบ่งปันเคล็ดลับและคำแนะนำไปพร้อมกัน
การจำลองแบบใน Tibase คืออะไร
ก่อนที่เราจะเจาะลึกถึงกระบวนการตั้งค่า เรามาทำความเข้าใจกันก่อนว่าการจำลองแบบหมายถึงอะไรในบริบทของ Tibase การจำลองแบบคือกระบวนการคัดลอกและซิงโครไนซ์ข้อมูลจากฐานข้อมูลหนึ่ง (ต้นทาง) ไปยังฐานข้อมูลอื่นตั้งแต่หนึ่งฐานข้อมูลขึ้นไป (แบบจำลอง) สิ่งนี้อาจมีประโยชน์ด้วยเหตุผลหลายประการ เช่น การปรับปรุงประสิทธิภาพการอ่านโดยการลดการโหลดคำขอการอ่านไปยังเรพลิกา การให้ความพร้อมใช้งานสูงในกรณีที่ฐานข้อมูลหลักล้มเหลว และการเปิดใช้งานการกระจายข้อมูลไปยังหลาย ๆ ตำแหน่ง
ข้อกำหนดเบื้องต้น
ก่อนที่คุณจะเริ่มตั้งค่าการจำลองแบบใน Tibase มีบางสิ่งที่คุณต้องเตรียม:
- อินสแตนซ์ Tibase หลายรายการ: คุณจะต้องมีอินสแตนซ์ Tibase อย่างน้อยสองอินสแตนซ์ - หนึ่งอินสแตนซ์เป็นแหล่งที่มาและหนึ่งอินสแตนซ์ขึ้นไปเป็นแบบจำลอง อินสแตนซ์เหล่านี้สามารถอยู่บนเซิร์ฟเวอร์เดียวกันหรือเซิร์ฟเวอร์อื่นได้ ขึ้นอยู่กับความต้องการของคุณ
- การเชื่อมต่อเครือข่าย: อินสแตนซ์ต้นทางและอินสแตนซ์จำลองจะต้องสามารถสื่อสารกันผ่านเครือข่ายได้ ตรวจสอบให้แน่ใจว่าพอร์ตที่จำเป็นเปิดอยู่ และไม่มีข้อจำกัดไฟร์วอลล์
- ใบอนุญาต Tibase: ตรวจสอบให้แน่ใจว่าคุณมีสิทธิ์การใช้งาน Tibase ที่ถูกต้องสำหรับอินสแตนซ์ทั้งหมดที่คุณวางแผนจะใช้สำหรับการจำลอง
ขั้นตอนที่ 1: กำหนดค่าอินสแตนซ์ต้นทาง
ขั้นตอนแรกคือการกำหนดค่าอินสแตนซ์ต้นทางเพื่อให้สามารถจำลองแบบได้ ต่อไปนี้คือวิธีที่คุณสามารถทำได้:


- เปิดใช้งานการบันทึกแบบไบนารี: การบันทึกแบบไบนารีถือเป็นสิ่งสำคัญสำหรับการจำลองแบบ เนื่องจากจะบันทึกการเปลี่ยนแปลงทั้งหมดที่เกิดขึ้นกับฐานข้อมูล หากต้องการเปิดใช้งานการบันทึกไบนารี คุณต้องแก้ไขไฟล์การกำหนดค่า Tibase (โดยปกติคือ
tibasedb.cnf- เพิ่มหรือแก้ไขบรรทัดต่อไปนี้:
log-bin = เซิร์ฟเวอร์ tibase-bin-id = 1
ที่เข้าสู่ระบบถังพารามิเตอร์ระบุชื่อฐานสำหรับไฟล์บันทึกไบนารีและรหัสเซิร์ฟเวอร์เป็นตัวระบุที่ไม่ซ้ำกันสำหรับอินสแตนซ์ต้นทาง
- รีสตาร์ทอินสแตนซ์ต้นทาง: หลังจากทำการเปลี่ยนแปลงในไฟล์การกำหนดค่า ให้รีสตาร์ทอินสแตนซ์ต้นทาง Tibase เพื่อให้การเปลี่ยนแปลงมีผล
sudo systemctl รีสตาร์ท tibasedb
- สร้างผู้ใช้การจำลองแบบ: คุณต้องสร้างผู้ใช้บนอินสแตนซ์ต้นทางที่อินสแตนซ์จำลองสามารถใช้เพื่อเชื่อมต่อและจำลองข้อมูล เข้าสู่ระบบอินสแตนซ์ต้นทางโดยใช้
ทิเบสไคลเอนต์และรันคำสั่ง SQL ต่อไปนี้:
สร้างผู้ใช้ 'repl_user'@'%' ระบุโดย 'รหัสผ่าน'; ให้สิทธิ์การจำลองแบบ SLAVE บน *.* ถึง 'repl_user'@'%'; สิทธิ์ล้าง;
แทนที่'รหัสผ่าน'ด้วยรหัสผ่านที่แข็งแกร่งที่คุณเลือก
ขั้นตอนที่ 2: กำหนดค่าอินสแตนซ์แบบจำลอง
ตอนนี้ก็ถึงเวลากำหนดค่าอินสแตนซ์แบบจำลองเพื่อเชื่อมต่อกับต้นทางและเริ่มการจำลองข้อมูล
- ตั้งค่ารหัสเซิร์ฟเวอร์: เช่นเดียวกับอินสแตนซ์ต้นทาง แต่ละอินสแตนซ์จำลองต้องมีค่าไม่ซ้ำกัน
รหัสเซิร์ฟเวอร์- แก้ไขไฟล์คอนฟิกูเรชัน Tibase บนอินสแตนซ์เรพลิกา และเพิ่มหรือแก้ไขบรรทัดต่อไปนี้:
เซิร์ฟเวอร์-id = 2
ตรวจสอบให้แน่ใจว่ารหัสเซิร์ฟเวอร์แตกต่างจากอินสแตนซ์ต้นทางและอินสแตนซ์จำลองอื่นๆ
- รีสตาร์ทอินสแตนซ์แบบจำลอง: รีสตาร์ทอินสแตนซ์แบบจำลอง Tibase เพื่อให้การเปลี่ยนแปลงมีผล
sudo systemctl รีสตาร์ท tibasedb
- กำหนดค่าแบบจำลองเพื่อเชื่อมต่อกับแหล่งที่มา: ล็อกอินเข้าสู่อินสแตนซ์จำลองโดยใช้
ทิเบสไคลเอนต์และรันคำสั่ง SQL ต่อไปนี้เพื่อกำหนดค่าเรพลิกาเพื่อเชื่อมต่อกับแหล่งที่มา:
เปลี่ยน MASTER เป็น MASTER_HOST = 'source_host', MASTER_USER = 'repl_user', MASTER_PASSWORD = 'รหัสผ่าน', MASTER_LOG_FILE = 'tibase-bin.000001', MASTER_LOG_POS = 4;
แทนที่'แหล่งที่มา_โฮสต์'ด้วยชื่อโฮสต์หรือที่อยู่ IP ของอินสแตนซ์ต้นทาง'repl_user'และ'รหัสผ่าน'ด้วยผู้ใช้การจำลองและรหัสผ่านที่คุณสร้างไว้ก่อนหน้านี้ และ'tibase-bin.000001'และ4พร้อมชื่อไฟล์บันทึกไบนารีจริงและตำแหน่งจากอินสแตนซ์ต้นทาง คุณสามารถรับชื่อและตำแหน่งไฟล์บันทึกไบนารีปัจจุบันได้โดยการรันแสดงสถานะมาสเตอร์;บนอินสแตนซ์ต้นทาง
- เริ่มกระบวนการจำลองแบบ: เมื่อเรพลิคาได้รับการกำหนดค่าให้เชื่อมต่อกับต้นทางแล้ว ให้เริ่มกระบวนการเรพลิเคชันโดยใช้คำสั่งต่อไปนี้:
เริ่มทาส;
ขั้นตอนที่ 3: ตรวจสอบการจำลองแบบ
หลังจากเริ่มกระบวนการจำลองแบบแล้ว คุณต้องตรวจสอบว่าทำงานอย่างถูกต้องหรือไม่ คุณสามารถทำได้โดยการรันคำสั่งต่อไปนี้บนอินสแตนซ์แบบจำลอง:
แสดงสถานะทาส\G
มองหาSlave_IO_กำลังทำงานและSlave_SQL_กำลังทำงานฟิลด์ในเอาต์พุต ควรตั้งค่าทั้งสองเป็นใช่หากการจำลองทำงานอย่างถูกต้อง หากฟิลด์ใดฟิลด์หนึ่งเหล่านี้ถูกตั้งค่าเป็นเลขที่อาจมีปัญหากับการกำหนดค่าการจำลองแบบ ตรวจสอบข้อความแสดงข้อผิดพลาดในเอาต์พุตเพื่อดูข้อมูลเพิ่มเติม
เคล็ดลับและเทคนิค
- ตรวจสอบความล่าช้าในการจำลอง: ความล่าช้าในการจำลองอาจเกิดขึ้นได้หากแบบจำลองไม่สามารถติดตามการเปลี่ยนแปลงในแหล่งที่มาได้ คุณสามารถตรวจสอบความล่าช้าในการจำลองได้โดยการเปรียบเทียบ
วินาที_เบื้องหลัง_ปรมาจารย์สนามในแสดงสถานะทาสเอาท์พุท หากความล่าช้ามีนัยสำคัญ คุณอาจต้องปรับฐานข้อมูลให้เหมาะสมหรือเพิ่มทรัพยากรบนอินสแตนซ์แบบจำลอง - สำรองข้อมูลอย่างสม่ำเสมอ: แม้ว่าจะมีการจำลองข้อมูล สิ่งสำคัญคือต้องมีการสำรองฐานข้อมูลของคุณเป็นประจำ การจำลองแบบไม่ใช่สิ่งทดแทนการสำรองข้อมูล เนื่องจากเป็นการคัดลอกการเปลี่ยนแปลงที่ทำกับฐานข้อมูลเท่านั้น และไม่ได้ป้องกันการสูญหายของข้อมูลเนื่องจากสาเหตุอื่น เช่น ความล้มเหลวของฮาร์ดแวร์หรือข้อผิดพลาดของมนุษย์
- ทดสอบความล้มเหลว: ทดสอบสถานการณ์การเฟลโอเวอร์เป็นระยะๆ เพื่อให้แน่ใจว่าอินสแตนซ์จำลองของคุณสามารถทำหน้าที่เป็นอินสแตนซ์หลักได้ในกรณีที่อินสแตนซ์ต้นทางล้มเหลว ซึ่งจะช่วยคุณระบุและแก้ไขปัญหาใดๆ ก่อนที่จะทำให้เกิดการหยุดทำงาน
สินค้าที่เกี่ยวข้อง
หากคุณอยู่ในตลาดอะไหล่รากฟันเทียม ลองดูผลิตภัณฑ์ดีๆ เหล่านี้:
บทสรุป
การตั้งค่าการจำลองแบบใน Tibase เป็นกระบวนการที่ค่อนข้างตรงไปตรงมา แต่ต้องมีการวางแผนและการกำหนดค่าอย่างรอบคอบ เมื่อทำตามขั้นตอนที่ระบุไว้ในบล็อกนี้ คุณควรจะสามารถตั้งค่าการจำลองได้สำเร็จ และรับประโยชน์จากประสิทธิภาพ ความพร้อมใช้งาน และความสมบูรณ์ของข้อมูลที่ได้รับการปรับปรุง
หากคุณมีคำถามหรือต้องการความช่วยเหลือเพิ่มเติมเกี่ยวกับการตั้งค่าการจำลองใน Tibase หรือสนใจที่จะซื้อผลิตภัณฑ์ Tibase โปรดติดต่อเรา เราพร้อมช่วยให้คุณใช้ฐานข้อมูล Tibase ให้เกิดประโยชน์สูงสุด
อ้างอิง
- เอกสาร Tibase
- คู่มือแนวทางปฏิบัติที่ดีที่สุดในการจำลองฐานข้อมูล
