คำถามติดแท็ก replication

การจำลองแบบเป็นกระบวนการของการแบ่งปันข้อมูลในระดับใด ๆ เพื่อให้แน่ใจว่ามีความสอดคล้องกันระหว่างทรัพยากรฮาร์ดแวร์ / ซอฟต์แวร์ซ้ำซ้อนเพื่อปรับปรุงความน่าเชื่อถือความทนทานต่อข้อผิดพลาดและการเข้าถึง

3
การลบไฟล์ mysql-bin ปลอดภัยหรือไม่
ฉันมีการจำลองแบบ MM ใน mysql และฉันต้องการที่จะบีบพื้นที่ว่างในกล่องเพื่อลบไฟล์ที่ไม่จำเป็นฉันเจอmysql-binไฟล์เหล่านี้ข้างใน/var/db/mysql/มีหลายร้อยไฟล์เช่นmysql-bin.000123นั้นmysql-bin.000223ฯลฯ ฉันได้ตรวจสอบการจำลองแบบ mysql ด้วยการทำshow master statusและshow slave statusพวกเขา การใช้ไฟล์ MySQL-bin บางที่บางตำแหน่ง แต่ผมคิดว่าทุกไฟล์ bin อื่น ๆ ที่เหลือซึ่งจะไม่ถูกนำมาใช้อีกต่อไป ในกรณีนี้ปลอดภัยที่จะลบไฟล์ mysql-bin ทั้งหมดยกเว้นไฟล์ที่การเรพลิเคทกำลังชี้ไปที่? หากปลอดภัยที่จะลบจะมีสิ่งใดบ้างที่ฉันสามารถทำได้เพื่อลบไฟล์เหล่านั้นโดยอัตโนมัติเมื่อไม่ได้ใช้งาน

7
ฉันจะปิดการใช้งานการจำลองแบบ MySQL อย่างสมบูรณ์ได้อย่างไร
ฉันกำลังรันการเรพลิเคท MySQL แบบดูอัลมาสเตอร์และตอนนี้ต้องการย้ายไปยังฐานข้อมูลเดียวโดยไม่มีการจำลองแบบ ฉันจะปิดใช้งานการจำลองแบบบนฐานข้อมูลทั้งสองได้อย่างไร

3
ข้อผิดพลาดในการเชื่อมต่อ MySQL 5.1.66 SSL ข้อผิดพลาด 2026 (HY000)
UPDATE2 ใช้ WireShark ฉันพบสตริงปัญหา (ฉันหวังว่าฉันได้): 28 | 9.582638 | 192.168.18.128 | 192.168.18.129 | MySQL Response Error 1043 และข้อผิดพลาดคือ (ตามเอกสาร ): Error: 1043 SQLSTATE: 08S01 (ER_HANDSHAKE_ERROR) Message: Bad handshake นี่คือภาพหน้าจอของ WireShark ในสองกรณี: การเชื่อมต่อจาก Windows 8 (สำเร็จ): การเชื่อมต่อจาก CentOS (ล้มเหลว): ทำไมสิ่งนี้ถึงเกิดขึ้น UPDATE สิ่งหนึ่งที่น่าสนใจ: ฉันได้เชื่อมต่อกับ Master DB โดยใช้ Windows 8 ได้สำเร็จ(192.168.18.1)โดยการแก้ไขการตั้งค่า sslus บน …
37 mysql  replication  ssl 

2
วิธีที่ปลอดภัยที่สุดในการเปลี่ยนรูปแบบ binlog คืออะไร
เนื่องจากคำเตือนต่อไปนี้ในmysqld.log: [คำเตือน] คำสั่งที่ไม่ปลอดภัยเขียนลงในบันทึกแบบไบนารีโดยใช้รูปแบบคำสั่งตั้งแต่ BINLOG_FORMAT = STATEMENT คำสั่งไม่ปลอดภัยเนื่องจากใช้ส่วนคำสั่ง LIMIT สิ่งนี้ไม่ปลอดภัยเนื่องจากไม่สามารถทำนายชุดของแถวที่รวมไว้ได้ MIXEDฉันต้องการที่จะเปลี่ยนรูปแบบการจำลองแบบ แต่ตามเอกสาร MySQL: การสลับรูปแบบการจำลองแบบที่รันไทม์จะไม่แนะนำเมื่อมีตารางชั่วคราวใด ๆ อยู่เนื่องจากตารางชั่วคราวจะถูกบันทึกเมื่อใช้การจำลองแบบตามคำสั่งเท่านั้นในขณะที่มีการจำลองแบบแถวที่ใช้พวกเขาจะไม่ถูกบันทึกไว้ ดังนั้นคำถามคือฉันจะระบุได้อย่างไรว่ามีตารางชั่วคราวใด ๆ ที่มีอยู่เพื่อเปลี่ยนรูปแบบไฟล์บันทึกอย่างปลอดภัยหรือไม่

4
ล็อกการถ่ายทอด MySQL เสียหายฉันจะแก้ไขได้อย่างไร พยายาม แต่ล้มเหลว
รีเลย์ MySQL v5.1.61 เสียหายเมื่อเครื่องปิดตัวลงกะทันหัน ฉันพยายามแก้ไข แต่มันใช้งานไม่ได้ - ฉันจะแก้ไขได้อย่างไร ฉันทำอะไรผิดหรือเปล่า? เท่าที่ฉันได้อ่านล็อกรีเลย์ MySQL เสียหายได้อย่างง่ายดายแก้ไข: change master to master_log_file='<Relay_Master_Log_File>', master_log_pos=<Exec_Master_Log_Pos>; ที่ไหนRelay_Master_Log_FileและExec_Master_Log_Posมีการระบุไว้โดย: mysql> show slave status; อย่างไรก็ตามเมื่อฉันทำchange master status ...ฉันได้รับข้อผิดพลาดการละเมิดคีย์หลัก เป็นไปได้อย่างไร? ขั้นตอนข้างต้นไม่ถูกต้องหรือมี +1 บางส่วนหายไปหรือไม่ (สำหรับตอนนี้ฉันเพิ่งนำเข้า mysqldump -master-data อีกครั้งจากต้นแบบไปยังทาสและสิ่งนี้แก้ปัญหาได้อย่างไรก็ตามในอนาคตการทำเช่นนั้นอาจไม่เหมาะสม) ต่อไปนี้เป็นรายละเอียดเกี่ยวกับปัญหาเฉพาะของฉัน: mysql> show slave status \G *************************** 1. row *************************** Slave_IO_State: Waiting for master to send …

5
เพิ่มบทความลงในสิ่งพิมพ์ของทรานแซคชันโดยไม่ต้องสร้างสแนปชอตใหม่
การใช้การจำลองแบบของทรานแซคชัน SQL 2008 R2 กับสมาชิก pull เมื่อเราเพิ่มบทความฉันต้องการหลีกเลี่ยงการสร้าง snapshot ทั้งหมด (db คือ ~ 80 GB ดังนั้นจึงใช้เวลาหลายชั่วโมง) จากบทความนี้ฉันได้เห็นวิธีการทำสิ่งนี้ด้วยสแนปชอตบางส่วนโดยการปิดใช้งานทันที_sync แต่นั่นไม่ได้ผลสำหรับเรา โดยหลักการแล้วฉันต้องการเรียกใช้สิ่งนี้เป็นส่วนหนึ่งของสคริปต์ db ของเราเพื่อสร้างตารางดังนั้นถ้าเราต้องการให้มันทำซ้ำเรา: Create Table ... sp_addArticle ... sp_PushThisToOurSubscribersNow

3
ควรตั้งค่าการจำลองแบบทาสของ MySQL ให้อ่านได้อย่างเดียวหรือไม่?
ฉันได้รับการจำลองแบบที่ทำงานบน Percona Server 5.5 โดยทำตามคำแนะนำนี้และสงสัยว่าฉันควรจะเพิ่มread-only=1ทาสของฉันmy.cnfเพื่อให้อ่านได้อย่างเดียวหรือไม่? คู่มือการตั้งค่าการจำลองแบบสำหรับตาราง mysql เพื่อให้ผู้ใช้มีการจำลองแบบ แต่ฉันส่วนใหญ่ใช้ทาสที่จะใช้ mysqldumps, ในกรณีฉุกเฉินการกำหนดค่าใหม่ให้เป็นหลักดังนั้นฉันไม่เชื่อว่าเราต้องการ (หรือควรมี) เขียนเปิดใช้งาน มันตลอดเวลา?

3
ใช้ pg_dump บนเซิร์ฟเวอร์ hot แตนหรือยัง?
คำเตือน: ฉันยอมรับว่ายังไม่ได้ลองสิ่งนี้ แต่ฉันไม่แน่ใจว่าฉันจะรู้ว่ามันทำงานไม่ถูกต้องหรือไม่ดังนั้นฉันต้องการถาม ฉันต้องการเรียกใช้งานการสำรองข้อมูลรายคืน (ผ่านpg_dumpall) จากเซิร์ฟเวอร์ hot standby ที่ใช้การจำลองแบบสตรีมมิ่งเพื่อหลีกเลี่ยงการวางภาระนั้นไว้บนหลัก ฉันได้เห็นเพียงการกล่าวถึงผู้คนที่ได้รับ gotchas เช่นที่นี่และที่นี่แต่มีคำแนะนำน้อยมาก ไม่เป็นไรหากการสำรองข้อมูลล่าช้าไปทางด้านหลังหลักเล็กน้อยตราบใดที่มันสอดคล้องกัน (ซึ่งควรจะเป็น) คำถามของฉันคือ: ฉันต้องการทำสิ่งนี้จริงๆหรือควรทำการสำรองข้อมูลบนเซิร์ฟเวอร์หลัก ทำไม? เมื่อทำการดัมพ์ในโหมดแสตนด์บายฉันต้องใช้การตั้งค่าใดและขั้นตอนใดที่ฉันควรทำอย่างถูกต้อง? เช่นฉันจะต้องหยุดการจำลองแบบในช่วงระยะเวลาของการสำรองข้อมูลหรือไม่

3
การซิงโครไนซ์ฐานข้อมูล SQL Server
นิยามปัญหา ผู้ใช้ของเราต้องการความสามารถในการสืบค้นฐานข้อมูลที่เป็นปัจจุบัน ข้อมูลสามารถค้างได้นานถึง 24 ชั่วโมงและเป็นที่ยอมรับ อะไรคือแนวทางต้นทุนที่ต่ำที่สุดในการรับและรักษาฐานข้อมูลที่สองด้วยข้อมูลการผลิต มีวิธีที่ฉันไม่ได้คิดหรือไม่? จำนวนงาน เรามีแอปพลิเคชันของบุคคลที่สามที่เราใช้ในการตรวจสอบกิจกรรมการซื้อขายหุ้น ในระหว่างวันมีการเปลี่ยนแปลงเล็กน้อยมากมายเกิดขึ้นเนื่องจากเป็นส่วนหนึ่งของกระบวนการทำงานที่หลากหลาย (ใช่การแลกเปลี่ยนนี้ใช้ได้ถูกต้องไม่เป็นที่น่าสงสัย ฯลฯ ) ในเวลากลางคืนเราดำเนินการตามชุดใหญ่ (โหลดการซื้อขายของวันก่อนหน้า) วิธีแก้ปัญหาและปัญหาปัจจุบัน เราใช้ประโยชน์จากภาพรวมฐานข้อมูล เวลา 22.00 น. เราจะส่งและสร้างภาพรวม การประมวลผล ETL จะเริ่มขึ้น นี่คือการเก็บภาษีบนดิสก์ของเรา แต่ช่วยให้ผู้ใช้ของเราสามารถสืบค้นฐานข้อมูลโดยไม่ต้องล็อกฐานข้อมูล (พวกเขาใช้ Access Front End) พวกเขาใช้มันในตอนกลางคืนและตอนเช้าเพื่อที่พวกเขาจะสังเกตเห็นการหยุดทำงาน ปัญหาด้วยวิธีนี้คือสองเท่า อย่างแรกคือในกรณีที่การประมวลผลทุกคืนล้มเหลวและนั่นไม่ใช่เรื่องแปลกมากเราได้รับการกู้คืนฐานข้อมูลซึ่งส่งผลให้สแนปช็อตถูกทิ้ง ปัญหาอื่นคือเวลาในการดำเนินการของเราลดลงผ่าน SLA ของเรา เราพยายามที่จะแก้ไขปัญหานี้ด้วยการทำงานร่วมกับผู้จัดจำหน่ายหลังจากพบคำค้นหาที่เขียนไม่ดีและไม่มีการจัดทำดัชนี สแนปชอตของฐานข้อมูลยังเป็นตัวการสำคัญในการชะลอตัวนี้ซึ่งเห็นได้จากความแตกต่างของความเร็วเมื่อมันปรากฏขึ้นเมื่อเทียบกับที่ไม่ใช่ --- น่าตกใจฉันรู้ แนวทางการพิจารณา การจัดกลุ่ม เราเปิดใช้งานการจัดกลุ่มฐานข้อมูลแล้ว แต่ไม่ได้ตอบสนองความต้องการในการทำให้ข้อมูลพร้อมใช้งานและโดยทั่วไปแล้วซับซ้อนชีวิตของผู้ดูแลระบบ มันถูกปิด การจำลองแบบเซิร์ฟเวอร์ SQL เราเริ่มดูการจำลองแบบเมื่อสัปดาห์ที่แล้ว ทฤษฎีของเราคือเราสามารถทำให้แคตตาล็อกที่สองโดดเด่นและประสานกับฐานข้อมูลการผลิต ก่อนการเริ่มต้น …

3
PostgreSQL: ฉันสามารถทำ pg_start_backup () บน live ที่รันอยู่ภายใต้โหลดหรือไม่?
การจำลองแบบที่สร้างขึ้นของเราใช้งานไม่ได้ ("ส่วน WAL ที่ร้องขอถูกลบแล้ว" ในช่วงเวลาที่ระบบหยุดทำงาน) เราไม่สามารถหยุดต้นแบบได้อย่างง่ายดายอีกครั้ง เราทำได้ไหม pg_start_backup(), rsync ${PGDATA}/ นายทาส pg_stop_backup() ... ในขณะที่มาสเตอร์ postgresql ยังโหลดเต็มหรือไม่ (หรือจะpg_start_backup()นำไปสู่ ล็อคตาราง บล็อก I / O ไม่สอดคล้องกัน สัญญาณเตือนไฟไหม้ การตอบสนอง db ช้า กล่าวอีกนัยหนึ่งจะpg_start_backup()ส่งผลต่อแอปพลิเคชันของเราหรือไม่

3
Postgresql ไม่ยอมรับการเชื่อมต่อการจำลองแบบ
การจำลองแบบสตรีมมิ่งแบบธรรมดาธรรมดา PostgreSQL: 9.2.7 Windows 8.1 64 บิต คลัสเตอร์หลักและรองของฉันอยู่บนเครื่อง Windows เดียวกัน ฉันทำpg_start_backup ()และทุกอย่างเรียบร้อยแล้วดังนั้นทั้งสองโหนดจึงมีข้อมูลเหมือนกัน ขณะนี้ปัญหาเกี่ยวกับการจำลองแบบคือ "การเชื่อมต่อการจำลองแบบ" จากเซิร์ฟเวอร์ทาสไม่ได้เชื่อมต่อกับเซิร์ฟเวอร์หลัก แต่ฉันสามารถเชื่อมต่อโดยใช้ params เดียวกันโดยใช้เปลือก psql สิ่งที่ฉันคิดว่าผู้ร้ายคือสตริงการเชื่อมต่อในการกู้คืนของทาส: primary_conninfo = 'host = 127.0.0.1 port = 5432 user = postgres password = postgres' ฉันพยายาม localhost, 0.0.0.0, lan IP ทุกอย่าง แต่บันทึก pg บอกว่า: FATAL: could not connect to the primary …

2
เราสามารถทำอะไรใน MySQL 5.0 Replication เพื่อจัดการกับปัญหาแบนด์วิดท์?
ฉันกำลังพัฒนาแอพพลิเคชั่นให้ทำงานบนไคลเอนต์พีซี (Win) ซึ่งได้รับการกำหนดค่าด้วยอินสแตนซ์ของเซิร์ฟเวอร์ MySQL 5.1 ที่จะทำหน้าที่เป็นสลาฟแบบอ่านอย่างเดียวไปยังต้นแบบระยะไกล ต้นแบบระยะไกลมีสกีมาหลายสิบ แต่ฉันต้องการเพียงหนึ่งต่อไคลเอนต์ดังนั้นฉันให้การตั้งค่าการจำลองแบบ - do-dbใน my.ini เพื่อทำซ้ำสคีมาที่ลูกค้าต้องการเท่านั้น การจำลองแบบใช้งานได้ แต่เมื่อลูกค้าของเราเข้าสู่ภูมิภาคต่างๆของโลกที่มีการเข้าถึงอินเทอร์เน็ตผ่านเครือข่ายไร้สาย 3G เท่านั้นซึ่งเรียกเก็บตามการใช้ข้อมูลลูกค้าจะเกินขีด จำกัด แผนข้อมูลของพวกเขาอย่างรวดเร็วและประสบปัญหาราคาแพง ดังที่ฉันเข้าใจแล้ว MySQL จะเขียนธุรกรรมทั้งหมดสำหรับสกีมาทั้งหมดลงในไฟล์ binlog ไฟล์เดียวซึ่งหมายความว่าไคลเอนต์แต่ละคนจะต้องดาวน์โหลดธุรกรรมทั้งหมดที่ดำเนินการกับทุกสกีมาบนมาสเตอร์แล้วดาวน์โหลดเมื่อใช้ตัวกรองฐานข้อมูลต่อการจำลองแบบการตั้งค่าdo-dbในไฟล์ my.ini ของลูกค้า เพื่อลดความไร้ประสิทธิภาพนี้ฉันได้ใช้การตั้งค่าslave_compressed_protocol = 1ซึ่งดูเหมือนว่าจะลดข้อมูลที่ส่งลง 50% แต่ก็ยังทำให้ลูกค้าของเราเกินขีด จำกัด ข้อมูลที่รวดเร็วขึ้นในบิล 3G ฉันไม่สามารถจินตนาการได้ว่าฉันเป็นเพียงคนเดียวที่พบสิ่งนี้ดังนั้นฉันแน่ใจว่าฉันจะได้รับคำตอบมากมายเกี่ยวกับวิธีการบรรลุเป้าหมายนี้โดยการตั้งค่า x = y อย่างไรก็ตามฉันไม่พบเอกสารของการตั้งค่าดังกล่าวหรือวิธีการที่แนะนำให้ใช้ จนถึงตอนนี้นี่เป็นความคิดของฉันในการแก้ปัญหาที่เป็นไปได้โปรดให้ข้อเสนอแนะหรือเส้นทางอื่น: ตั้งค่าทาส "พร็อกซี" สำหรับแต่ละสคีมา (ในกล่องอื่นหรือกล่องเดียวกันกับอินสแตนซ์ / พอร์ต MySQL อื่น) กำหนดค่าพร็อกซี slave เพื่อทำซ้ำ-do-db …

3
วิธีการตรวจสอบ master ใน mysql master-slave
ฉันกำลังตั้งค่าการจำลองแบบ MySQL Master-slave และฉันกำลังพยายามหาวิธีจัดการกับสถานการณ์ที่ล้มเหลวซึ่งฉันเลื่อนตำแหน่งสลาฟไปเป็นมาสเตอร์ (ในกรณีที่มาสเตอร์ลงไป) แอ็พพลิเคชันเซิร์ฟเวอร์ของฉันต้องกำหนดให้การเขียนทั้งหมดไปยังต้นแบบปัจจุบัน แต่ฉันไม่สามารถใช้ HA ระดับเซิร์ฟเวอร์ระหว่างต้นแบบและทาส (heartbeat, keepalived) เนื่องจากเซิร์ฟเวอร์ db สองตัวอยู่บนเครือข่ายย่อยที่แตกต่างกันโดยสิ้นเชิงในตำแหน่งที่ตั้งทางกายภาพที่แตกต่างกัน ฉันคิดว่านี่เป็นสิ่งที่ฉันต้องจัดการในระดับแอปพลิเคชัน ฉันสามารถค้นหาเซิร์ฟเวอร์ทั้งสองและถามว่าเซิร์ฟเวอร์ใดเป็นเซิร์ฟเวอร์หลักแล้วดำเนินการสอบถามทั้งหมดไปยังเซิร์ฟเวอร์นั้น มีแบบสอบถามใน MySQL เพื่อดูว่าเซิร์ฟเวอร์ปัจจุบันเป็นหลักในแบบจำลองต้นแบบทาสหรือไม่?

1
ในการจำลองแบบ MySQL Master / Slave จะเกิดอะไรขึ้นถ้าฉันเขียนไปยัง Slave
หลายคำถาม รายการ Slave จะยังคงอยู่จนกว่าจะมีการแทรก / อัปเดต / ลบไปยังตารางใน Master ที่อาจส่งผลกระทบต่อ Slave? ถ้าไม่ฉันจะแน่ใจได้อย่างไรว่า Slave ซิงค์กับ Master ต่อไป (โดยการลบรายการ Slave หรือคัดลอกรายการนั้นไปยัง Master ด้วยตนเอง) ที่สำคัญที่สุดฉันจะตรวจสอบได้อย่างไรว่าตารางนั้นไม่ซิงค์กัน?

5
โครงสร้างพื้นฐานสำหรับฐานข้อมูลการเขียนสูงพร้อมกันสูง
ความต้องการของฉันคือ: การเชื่อมต่อ 3000 70-85% เขียน vs อ่าน ขณะนี้เรากำลังใช้งาน CPU ระดับสูง, ขนาดใหญ่พิเศษเป็นพิเศษที่ 700 การเชื่อมต่อ 8 แกนทั้งหมดมีค่าสูงสุด เราคิดว่ามันเป็นจำนวนของการเชื่อมต่อพร้อมกันเนื่องจากหน่วยความจำดี การเขียนนั้นง่ายมาก (การตรวจสอบความถูกต้องช้า) หากต้องการขยายขนาดเป็น 3000 เราต้องไปที่เซิร์ฟเวอร์หลายตัวเลือกปัจจุบัน: MySQL Sharding MongoDB คลัสเตอร์ คาสซานดรา Hadoop & MySQL (แคช Hadoop, ดัมพ์เดี่ยวไปยัง MySQL) MongoDB & MySQL (แทนที่จะเป็น Hadoop เราใช้ Mongo เป็นแคช) เพื่อจัดการกับจำนวนการเชื่อมต่อนี้จำนวนคำถาม: MySQL Sharding สามารถจัดการการเชื่อมต่อพร้อมกันได้หรือไม่? มาสเตอร์คนใดคนหนึ่งสามารถจัดการการเชื่อมต่อที่เกิดขึ้นพร้อมกันเหล่านี้หรือตัวเลือกที่ดีกว่าหลายอย่างเช่น Mongo ได้หรือไม่? ฉันขอโทษถ้าฉันอธิบายปัญหาไม่ได้ กรุณาถามคำถาม

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.