BMS-HOSxP Community

HOSxP => แจ้งปัญหา / ขอความช่วยเหลือ => ข้อความที่เริ่มโดย: เข้ม ที่ สิงหาคม 15, 2008, 13:56:01 PM

หัวข้อ: การ Replication แบบเป็นทอด ๆ ต่อกันไป
เริ่มหัวข้อโดย: เข้ม ที่ สิงหาคม 15, 2008, 13:56:01 PM
ตอนนี้ผมทำ Replication ดังนี้

ช่วงแรกทำ MASTER ----> SLAVE 1, 2 พร้อมกัน

แต่เมื่อวานได้เปลียนใหม่เป็น

MASTER ----> SLAVE 1 -----> SLAVE 2

MASTER ---> SLAVE 1 ทำตลอดเวลา
SLAVE 1 ---> SLAVE 2 ทำตามกำหนดเวลา

วิธีการนำเข้าข้อมูล SLAVE 2 คือ initial import จาก SLAVE 1 ซึ่งเดิมที SLAVE 2 มีข้อมูลอยู่ก่อนแล้วตอนที่ Replicate พร้อมกัน โดยทำ initial import ทับไปเลย

หลังจากขบวนการ Replication อยู่ในสถานะ Active-syn แล้ว เมื่อตรวจสอบข้อมูลในหน้า บันทึกผลวินิจฉัย
เปรียบเทียบกัน ทั้ง  3 เครื่อง ในแต่ละวัน มีบางวันไม่เท่ากันครับ ยิ่งวันนี้ยิ่งไม่เท่ากันเลย ตัว SLAVE 2 จำนวนคนไข้น้อยกว่า ต่างกันประมาณ ครึ่งหนึ่ง มันเกิดอะไรขึ้นครับ ผมทำถูกวิธีหรือป่าว?

หัวข้อ: Re: การ Replication แบบเป็นทอด ๆ ต่อกันไป
เริ่มหัวข้อโดย: nuntagan ที่ สิงหาคม 15, 2008, 14:59:07 PM
ขอความกระจ่างจากท่านผู้รู้ด้วยนะคะ 

ซึ่งการทำ  Replication สามารถทำเป็นทอดๆ เหมือนกับที่พี่ carbopolnph อธิบายไปแล้วได้ใหม
เพราะตอนนี้ SLAVE 2 ข้อมูลต่างจาก server มากๆ  พยายามค้นคว้าหลายวิธีแล้ว ทดลองแก้ปัญเองดูแล้วก็ไม่สำเร็จ :'(
หัวข้อ: Re: การ Replication แบบเป็นทอด ๆ ต่อกันไป
เริ่มหัวข้อโดย: manoi ที่ สิงหาคม 15, 2008, 15:01:31 PM
น่าจะทำได้นะครับ แต่จาก Slave1 -> Slave2 ต้องใช้ระบบ Replication ของ MySQL ครับ
หัวข้อ: Re: การ Replication แบบเป็นทอด ๆ ต่อกันไป
เริ่มหัวข้อโดย: doramon ที่ สิงหาคม 15, 2008, 15:02:27 PM
ตอนนี้ผมทำ Replication ดังนี้

ช่วงแรกทำ MASTER ----> SLAVE 1, 2 พร้อมกัน

แต่เมื่อวานได้เปลียนใหม่เป็น

MASTER ----> SLAVE 1 -----> SLAVE 2

MASTER ---> SLAVE 1 ทำตลอดเวลา
SLAVE 1 ---> SLAVE 2 ทำตามกำหนดเวลา

วิธีการนำเข้าข้อมูล SLAVE 2 คือ initial import จาก SLAVE 1 ซึ่งเดิมที SLAVE 2 มีข้อมูลอยู่ก่อนแล้วตอนที่ Replicate พร้อมกัน โดยทำ initial import ทับไปเลย

หลังจากขบวนการ Replication อยู่ในสถานะ Active-syn แล้ว เมื่อตรวจสอบข้อมูลในหน้า บันทึกผลวินิจฉัย
เปรียบเทียบกัน ทั้ง  3 เครื่อง ในแต่ละวัน มีบางวันไม่เท่ากันครับ ยิ่งวันนี้ยิ่งไม่เท่ากันเลย ตัว SLAVE 2 จำนวนคนไข้น้อยกว่า ต่างกันประมาณ ครึ่งหนึ่ง มันเกิดอะไรขึ้นครับ ผมทำถูกวิธีหรือป่าว?



ตรวจสอบที่ ตาราง repication_log  ครับ ว่า id เท่ากันหรือเปล่า

หัวข้อ: Re: การ Replication แบบเป็นทอด ๆ ต่อกันไป
เริ่มหัวข้อโดย: thannawe ที่ สิงหาคม 15, 2008, 15:03:33 PM
ผมเคยทดสอบโดยการ inital import ไปเครื่อง slave เมื่อเสร็จแล้วก็ run replicate ไป เครื่อง slave
มันมีบางตัว error อยู่ครับและข้อมูลก็ไม่ครบครับ เพราะฉะนั้นจึงเป็นเหตุให้ผมต้อง inital import บ่อยขึ้นครับ

เพื่อป้องกันข้อมูลที่ run replicate ไปไม่ครบครับ
ผมทดสอบโดยตรวจ ตาราง opitemrece ในช่วงเวลาย้อนหลังครับ จำนวนrecord  มันไม่เท่ากับของจริงครับ
มีภาพตัวอย่างมาให้ดูครับ
ผมใช้ 3.51.5.14 ครับ แต่จะลองทดสอบไปเรื่อยๆครับ
หัวข้อ: Re: การ Replication แบบเป็นทอด ๆ ต่อกันไป
เริ่มหัวข้อโดย: BMS MA Team ที่ สิงหาคม 15, 2008, 16:06:59 PM
อ้างจาก อาจารย์ doraemon(saiyok) : ตรวจสอบที่ ตาราง repication_log  ครับ ว่า id เท่ากันหรือเปล่า
*** ไม่เท่ากันคะ  SLAVE 1 = 78532 , SLAVE 2 = 96  :(

สอบถามเพิ่มเติมคะ : เริ่มจะงง! กับระบบ  repication แล้วคะ
          1.กรณีที่ทำ Replication เครื่องเดียว ถ้ากรณีที่ข้อมูลเครื่อง server โดนมือดีเปลี่ยนแปลงโครงสร้างตาราง ข้อมูลจากเครื่อง Slave ก็จะโดนเปลี่ยนไปด้วย ใช่หรือไม่คะ (เมื่อ server เป็นอะไร นำตัว Slave มาใช้งานก็ไม่ได้ )
          2. ในกรณีที่ทำ Replication จากระบบ HOSxP สามารถใส่  Slave 2 เครื่องได้  แต่ถ้ากด Run Agent ข้อมูลจะวิ่งพร้อมกันทันที่ (ทาง รพ.จึงต้องคิดแผน 2 ทำระบบ Replication เหมือนกับคุณcarbopolnph ได้อธิบายไว้เบื้องต้น แล้วก็เกิดปัญหาที่ได้กล่าวไว้แล้ว )
             สามารถเลือกได้ใหมคะ ว่า สามารถเลือกตัว Slave ในการ Replication  เป็นรายตัว และเป็นช่วงเวลาได้     เพราะ รพ.มีปัญหาเรื่องระบบความปลอดภัยมากๆ   


                                                                      ขอคำตอบ 2 ข้อนี้ด้วยนะคะ
                                                                                ขอบคุณคะ
 
หัวข้อ: Re: การ Replication แบบเป็นทอด ๆ ต่อกันไป
เริ่มหัวข้อโดย: doramon ที่ สิงหาคม 15, 2008, 16:16:42 PM
Syslog-ng   เพิ่มระบบตรวจสอบการเข้ามาของทุกคน  ตรวจสอบการทำงานของ mysql ด้วย

แต่ผมทดสอบแล้วมันทำให้ระบบทำงานหนักขึ้น 

หัวข้อ: Re: การ Replication แบบเป็นทอด ๆ ต่อกันไป
เริ่มหัวข้อโดย: manoi ที่ สิงหาคม 15, 2008, 16:20:16 PM
คงต้องมานั่งคิดดูอีกครั้งนะครับ ว่าทำไมจึงต้อง setup ระบบ replication

ระบบ Replication ถูกออกแบบมาสำหรับแก้ปัญหาในกรณี Hardware ของเครื่องหลักมีปัญหา หรือช่วยลด workload จากการทำรายงาน แต่ไม่ได้ถูกออกแบบมาสำหรับป้องข้อมูลถูกแก้ไขหรือเปลี่ยนแปลงนะครับ  หากต้องการเก็บข้อมูล ณ ช่วงเวลานั้นเอาไว้ น่าจะทำ Full Backup จะดีกว่าหรือเปล่าครับ หรือ Backup / Restore ไว้ในเครื่อง stand by เป็น ระยะๆ ก็น่าจะดีกว่าทำระบบ Cascade replication เช่นกัน
หัวข้อ: Re: การ Replication แบบเป็นทอด ๆ ต่อกันไป
เริ่มหัวข้อโดย: BMS MA Team ที่ สิงหาคม 15, 2008, 16:40:16 PM
     ขอบคุณสำหรับคำตอบของอาจารย์คะ เข้าใจถ่องแท้มากๆ แต่เดิมก็เข้าใจเกือบจะประมาณนี้ แต่พอโดนผู้บริหารถามมากๆ ก็เริ่ม งง! คะ
     แต่ตอนนี้ทางผู้ดูแลระบบของโรงพยาบาลต้องมานั่งคิดใหม่แล้วคะ ว่าจะทำอย่างไรให้ข้อมูลปลอดภัยที่สุด และถ้าเกิดปัญหาต้องหยุดระบบให้ใช้ระยะเวลาให้น้อยที่สุด ณ ตอนนี้ข้อมูลโรงพยาบาลเริ่มแยะขึ้นทุกวัน Visit เฉลี่ยวันละ  600 - 1200 คน  ซึ่งทางผู้ดูแลระบบจะนำข้อเสนอที่อาจารย์เสนอมาประชุมกับผู้บริหารอีกครั้งคะ



                                                      ขอขอบคุณทุกๆ คำตอบที่ตอบปัญหาให้กับกระทู้นี้คะ

หัวข้อ: Re: การ Replication แบบเป็นทอด ๆ ต่อกันไป
เริ่มหัวข้อโดย: asawincyber ที่ สิงหาคม 15, 2008, 19:03:48 PM
อาจารย์อ็อด แนะนำว่า ให้ไลท์ไฟล์ Backup ใส่แผ่น DVD ฝากเก็บที่ ตู้เซฟโรงพยาบาลครับ
วิธีนี้ แผ่น DVD ต้อง ดีหน่อยครับ ผมทำตามอาจารย์อ็อดแล้ว 1อาทิตย์ไลท์ใส่แผ่น 1แผ่น ส่วน
backup file ทำทุกวัน  น่าจะดีกว่าเก็บไว้ในเครื่อง ฝนตก
ฟ้าผ่ามา ถ้าซวย ก็คงวิ่งหมดทั้งวง Lan อย่างงี้กู้ไม่ได้แน่นนอน  จบกัน นครนายก ฟ้ายิ่งแรง อิอิ
หัวข้อ: Re: การ Replication แบบเป็นทอด ๆ ต่อกันไป
เริ่มหัวข้อโดย: วีระวัฒน์ (เอก) ที่ สิงหาคม 15, 2008, 20:50:54 PM
เท่าที่ผมสังเกตุพบว่า เมื่อทำการ intial import แล้ว ข้อมูลจะเหมื่อน Master ทุกอย่าง แต่หลังจาก run agent แล้ว เครื่อง Slave  data ที่เพิ่มใหม่เข้าไป ถ้าเป็นภาษาไทย จะเป็นตัวอักษร  ??????? เช่นตาราง patient HN ที่เพิ่มใหม่ ชื่อผู้รับบริการจะไม่เป็นภาษาไทย
หัวข้อ: Re: การ Replication แบบเป็นทอด ๆ ต่อกันไป
เริ่มหัวข้อโดย: manoi ที่ สิงหาคม 15, 2008, 21:16:33 PM
mysql ไม่ได้กำหนด default character set เป็น tis620 ครับ
หัวข้อ: Re: การ Replication แบบเป็นทอด ๆ ต่อกันไป
เริ่มหัวข้อโดย: วีระวัฒน์ (เอก) ที่ สิงหาคม 16, 2008, 05:31:09 AM
ช่วยตรวจสอบด้วยครับ ใน my.ini  slave window 2003 ram 2 GBครับ
[mysqld]
basedir=D:\Program Files\HOSxP\MySQL
datadir=D:\Program Files\HOSxP\MySQL\data
default-character-set=tis620
key_buffer=720M
table_cache=512
sort_buffer_size=1M
read_buffer_size=1M
read_rnd_buffer_size=1M
myisam_sort_buffer_size=128M
max_allowed_packet=32M
default-character-set=tis620
thread_cache = 8
query_cache_size= 32M
thread_concurrency = 8
skip-character-set-client-handshake                 
skip-locking
skip-name-resolve
big-tables
init_connect = 'SET NAMES tis620'
default-character-set=tis620
max_connections=1000
ulimit -n 30000

innodb_data_file_path=ibdata1:100M:autoextend
innodb_flush_log_at_trx_commit=1
innodb_buffer_pool_size=512M
innodb_additional_mem_pool_size=20M
innodb_log_file_size=64M
innodb_log_buffer_size=8M
innodb_lock_wait_timeout=50
innodb_thread_concurrency = 0

max_connections=1000
innodb_file_per_table
[mysql]
default-character-set=tis620
[mysqldump]
default-character-set=tis620
max_allowed_packet=16M
allow-keywords
[WinMySQLadmin]
user=sa
password=sa
Server=D:/Program Files/HOSxP/MySQL/bin/mysqld-nt.exe
หัวข้อ: Re: การ Replication แบบเป็นทอด ๆ ต่อกันไป
เริ่มหัวข้อโดย: manoi ที่ สิงหาคม 16, 2008, 06:17:14 AM
ต้องใช้คำสั่ง show variables ของเครื่อง Server แล้วส่งเข้ามาครับ
หัวข้อ: Re: การ Replication แบบเป็นทอด ๆ ต่อกันไป
เริ่มหัวข้อโดย: วีระวัฒน์ (เอก) ที่ สิงหาคม 16, 2008, 14:55:39 PM
show variables ตามนี้ครับ อ.ชัยพร
หัวข้อ: Re: การ Replication แบบเป็นทอด ๆ ต่อกันไป
เริ่มหัวข้อโดย: doramon ที่ สิงหาคม 16, 2008, 15:21:44 PM
character_set_system   utf8
หัวข้อ: Re: การ Replication แบบเป็นทอด ๆ ต่อกันไป
เริ่มหัวข้อโดย: วีระวัฒน์ (เอก) ที่ สิงหาคม 16, 2008, 15:52:44 PM
เพิ่มตรงส่วนใหนครับใน my.ini  อ.อ๊อด ช่วยเขียนเพิ่มเติมในบรรทัดใหนของ win.ini ก็ดีนะครับจะได้เข้าใจเร็วขึ้น
หรือขอตัวอย่างไฟล์  my.cnf     my.ini   ก็ได้ครับ ขอบคุณมากครับ
หัวข้อ: Re: การ Replication แบบเป็นทอด ๆ ต่อกันไป
เริ่มหัวข้อโดย: วีระวัฒน์ (เอก) ที่ สิงหาคม 17, 2008, 21:11:16 PM
ขอคำแนะนำด้วยครับ อ.ชัยพร
หัวข้อ: Re: การ Replication แบบเป็นทอด ๆ ต่อกันไป
เริ่มหัวข้อโดย: manoi ที่ สิงหาคม 18, 2008, 00:02:36 AM
variable เป็นของ master หรือ slave ครับ ถ้าเป็นของ slave ก็ไม่มีอะไรผิดปกติครับ ลอง initial import ใหม่ แล้วรอดูว่ามีปัญหาเหมือนเดิมหรือไม่นะครับ
หัวข้อ: Re: การ Replication แบบเป็นทอด ๆ ต่อกันไป
เริ่มหัวข้อโดย: วีระวัฒน์ (เอก) ที่ สิงหาคม 18, 2008, 15:40:32 PM
variable เป็นของ  slave ครับ  intial import ก็เป็นเหมือนเดิมครับ
หัวข้อ: Re: การ Replication แบบเป็นทอด ๆ ต่อกันไป
เริ่มหัวข้อโดย: manoi ที่ สิงหาคม 18, 2008, 18:14:45 PM
ช่วยส่ง ผลลัพท์ของคำสั่ง show create table patient เข้ามาด้วยครับ