การตั้งค่าการจำลองแบบฐานข้อมูล MySQL
มันเสมอข้อมูลเกี่ยวกับ การใช้ระบบใด ๆ โดยไม่มีข้อมูลที่จะอาศัยอยู่กับอะไร?
การตั้งค่าการจำลองแบบฐานข้อมูลเป็นหนึ่งในหลายขั้นตอนที่ควรจะต้องดำเนินการเพื่อที่จะเก็บรักษาข้อมูล, ป้องกันการสูญเสียใด ๆ และการกู้คืนระบบได้ง่ายขึ้น
โชคดีที่มันง่ายกับ MySQL ดังนั้นขอสมมติว่าเรามีสองเซิร์ฟเวอร์ที่ใช้ MySQL, หนึ่งเรียกว่า host1 และอื่น ๆ ที่ host2
การจำลองแบบสามารถเป็นได้ทั้งต้นแบบต้นแบบหรือต้นแบบทาส ด้วยการจำลองแบบ master ทาส, ทาสเสมอซ้ำสิ่งที่ฐานข้อมูลหลักที่จะดำเนินการ ในการจำลองต้นแบบต้นแบบ, ฐานข้อมูลทั้งสองประสานกับแต่ละบุคคล
สำหรับวัตถุประสงค์ของการกวดวิชานี้เป็น master ทาส (ที่นี่ host1 และ host2 ตามลำดับ) สถานการณ์จะตรวจสอบ
แรกของทุกเปิดไฟล์ config mysql บน host1 (มักจะพบที่ / etc / my.cnf บน Linux, และ c : \ windows \ my.ini บน Windows), และ uncomment (ลบกัญชาของ) บรรทัดต่อไปนี้ :
# ข้ามเครือข่าย
ประการที่สองคุณจะต้องระบุแฟ้มที่ต้นแบบ (host1) ควรเข้าสู่ระบบ (เขียน) แบบสอบถามที่จะดำเนินการ นี้จะช่วยให้ทาส (host2) ในการอ่านคำเหล่านี้และรันพวกเขาเช่นกัน เช่นเพิ่มบรรทัดเช่น :
เข้าสู่ระบบ bin = เส้นทาง / / เพื่อ / mysql - bin.log
ที่มีค่าดังกล่าวเป็นเส้นทางไปยังแฟ้ม MySQL ที่ควรจะทำที่เข้าสู่ระบบ คุณเป็นอย่างดีสามารถสร้างไดเรกทอรีแยกต่างหากหรือใช้ค่าเริ่มต้นไดเรกทอรีที่ติดตั้ง MySQL (เช่น c : \ Program Files \ MySQL \ บน Windows หรือ / var / lib / mysql บน Linux)
จากนั้นคุณจะต้องระบุชื่อของฐานข้อมูลในคำถาม ดังนั้นถ้าคุณกำลังตั้งค่าการจำลองแบบสำหรับหนึ่งในฐานข้อมูล MySQL ของคุณเรียกว่า'work_data'แล้วนี้เป็นเส้นที่คุณต้องเพิ่มไปยังการตั้งค่า MySQL ของคุณ :
binlog - DO - db = work_data
สุดท้ายคุณจะต้องระบุรหัสเซิร์ฟเวอร์ที่กล่าวว่านี้เป็นเซิร์ฟเวอร์หลัก
เซิร์ฟเวอร์ - id = 1
บันทึกไฟล์การตั้งค่าและออกจาก
ตอนนี้คุณต้องได้รับอนุญาตให้ host2 ที่จะทำซ้ำข้อมูลที่ เป็นเช่น MySQL แบบสอบถามความต้องการที่จะออกในต้นแบบ
ดังนั้นใน host1 เข้าสู่ระบบไปยัง MySQL prompt (mysql - u root - pyour_root_password) (หรือ phpMyAdmin, etc ... สิ่งที่คุณใช้), และปัญหาที่คำสั่งต่อไปนี้ :
การจำลองแบบทาสให้กับ *.* ไป''@'%' ที่ระบุโดยชื่อผู้ใช้รหัสผ่าน';
ให้แน่ใจว่าแทนที่ชื่อผู้ใช้และรหัสผ่านที่มีข้อมูลประจำตัวของคุณเลือก เก็บราคาเดียวแม้ว่า
เข้าสู่ระบบ% หมายความว่าทาสสามารถเชื่อมต่อจากโฮสต์ใด ๆ ถ้าคุณต้องการที่จะปลอดภัยมากขึ้นแทนที่ที่มี host2 (ทาสของชื่อโฮสต์)
หลังจากที่ทั้งหมดข้างต้นที่จะทำเริ่ม MySQL บริการ (บริการ mysqld เริ่มต้น (Linux) หรือสุทธิหยุด MySQL, MySQL เริ่มต้นสุทธิ (บน Windows))
ถ้าฐานข้อมูลมีข้อมูลที่ก่อนหน้านี้ให้แน่ใจว่าคุณจะถ่ายโอนข้อมูลและโหลดบนทาสก่อนที่จะทำดังกล่าวข้างต้น ข้อมูลการทุ่มตลาดเป็นเรื่องง่ายและสามารถทำได้โดยการ cd'ing ไปยังไดเรกทอรี bin MySQL และออก :
mysqldump - Q - u root - pyour_root_password DatabaseName database_dump.sql>
(แทนที่รหัสผ่านและชื่อฐานข้อมูลที่มีเข้าสู่ระบบที่ถูกต้อง) ทั้งฐานข้อมูลในขณะนี้จะอยู่ในไฟล์ที่เรียกว่า database_dump.sql
ที่จะนำเข้าเมื่อ host2 CD, ไปยังไดเรกทอรี bin MySQL และปัญหา :
MySQL - u - root DatabaseName pyour_root_password </ path / to / แฟ้ม / / database_dump.sql
ไฟล์การตั้งค่า MySQL บน host2 ควรจะมีบรรทัดต่อไปนี้ :
เซิร์ฟเวอร์ - id = 2
ต้นแบบโฮสต์ = host1
หลักที่ผู้ใช้ชื่อผู้ใช้ =
ต้นแบบรหัสผ่านรหัสผ่าน =
โทพอร์ต = 3306
ที่ host1 คือต้นแบบของชื่อโฮสต์ / IP, ชื่อผู้ใช้และรหัสผ่านและเป็นข้อมูลประจำตัวที่คุณใช้เมื่ออนุญาตให้เข้าถึงการจำลองแบบไม่กี่ขั้นตอนดังกล่าวข้างต้น 3306 คือพอร์ต MySQL ทำงานบน (ซึ่งเป็นค่าเริ่มต้น)
แล้วเริ่มขั้นตอนทาสเมื่อ host2 โดยการออกที่ MySQL prompt :
เริ่มทาส;
เพื่อให้การจำลองแบบการทำงานตรวจสอบว่าเป็นปัญหาแบบสอบถาม SQL ต่อไปนี้บน host1 :
สถานะทาสแสดง \ G
(Slave_SQL_Running และ Slave_IO_Running ควรรายงาน'ใช่')
โชคดี

ที่ดีเพียงแค่สิ่งที่ฉันต้องการ ตอนนี้ ... มันเป็นไปได้ที่จะตั้งค่าอุปกรณ์ต้นแบบที่จะทำซ้ำหลายในเซิร์ฟเวอร์ทาสเพียงหนึ่ง? ฉันขอนี้เพราะ im พยายามตั้งค่าการใช้งานโครงสร้าง - Stanby ในซึ่งถ้าหนึ่งของปริญญาโทที่ล้มเหลวก็จะสามารถใช้ทดแทนชั่วคราวโดยเซิร์ฟเวอร์ทาส ขอบคุณ
โรเบิร์ตเรียน
สิ่งที่เกี่ยวกับการใช้บริการหลาย MySQL บนโฮสต์ทาส? แต่ละคนจะได้ทำงานในพอร์ตที่แตกต่างกันและจะขึ้นอยู่กับต้นแบบที่แตกต่างกัน
Genius ครับ! ถึงแม้ว่าฉันจะต้องเปลี่ยนวิธีที่ผู้ใช้ที่เชื่อมต่อกับฐานข้อมูลเพื่อที่จะทำให้อย่างราบรื่นในกรณีของความล้มเหลว
คุณสามารถติดตั้งบริการ DNS ท้องถิ่นและทำให้ผู้ใช้ใช้ชื่อโฮสต์ (ในกรณีปกติชี้ไปที่ต้นแบบ) ในการเข้าถึงบริการของคุณ
ในกรณีของความล้มเหลวคุณก็สามารถเปลี่ยนระเบียน DNS ของชื่อโฮสต์ที่ให้ชี้ไปที่เครื่องทาส
ผู้ใช้จะไม่สังเกตเห็นความเปลี่ยนแปลงถ้าคุณเปลี่ยน IP ที่ช่วยแก้ชื่อโฮสต์ไป
[...] ทำให้เป็นไปได้ที่จะเพิ่มหรือลบโหนดจากกลุ่มโดยไม่จำเป็นต้องกำหนดค่า clients.Tips และเทคนิคการตั้งค่าฐานข้อมูล MySQL replicationSo ขอสมมติว่าเรามีสองเซิร์ฟเวอร์ที่ใช้ MySQL, หนึ่งเรียกว่า host1 และอื่น ๆ ที่ host2 ... หากคุณ [...]
ฉันได้อ่านเป็นบางส่วนของบทความในเว็บไซต์ของคุณตอนนี้และผมชอบสไตล์ของคุณจากบล็อก ผมเพิ่มไปยังรายการโปรดของรายการบล็อกของฉันและจะได้รับการตรวจสอบกลับมาอีกครั้ง กรุณาตรวจสอบเว็บไซต์ของฉันเป็นอย่างดีและแจ้งให้เราทราบสิ่งที่คุณคิด
suppliments ธรรมชาติ