BMS-HOSxP Community
HOSxP => MySQL => ข้อความที่เริ่มโดย: yord ที่ กรกฎาคม 14, 2009, 00:10:24 AM
-
ผมทำการ Initial Import! จาก Master ไป Slave เสร็จแล้ว เปรียบเทียบข้อมูลกัน 2 เครื่องไม่เท่ากันครับ
เท่าที่ตรวจสอบผ่านๆ ดู ก็จะมีตารางใหญ่ๆ เช่น ksklog, opitemrece ที่ต่างกันเป็น G เลยครับ ไม่ทราบท่านอื่นเป็นอย่างนี้บ้างหรือเปล่าครับ ;D
-
อีกอย่างครับ ;D
ไฟล์พวกนี้ไว้ทำอะไรครับ ทำไมถึงมากจัง(อันนี้ผมทดสอบกับ Mysql XtraDB5.1.30 ครับ) ???
-
อีกอย่างครับ ;D
ไฟล์พวกนี้ไว้ทำอะไรครับ ทำไมถึงมากจัง(อันนี้ผมทดสอบกับ Mysql XtraDB5.1.30 ครับ) ???
เป็น Binary log ครับ ใช้ในกรณี ตั้ง replication slave โดย tool ของ mysql เอง
-
ขอบคุณมากครับ ;D
ลบไม่ได้อย่างแน่นอนใช่ไหมครับ ;D
-
ถ้าไม่ได้ทำ replication slave โดย mysql น่าจะลบได้ครับ
ต้องรอถาม อ.ชัยพรว่า replication ของ hosxp ใช้ file นี้ไหมด้วย
ถ้าลบได้ และ ไม่ใช้ replication slave โดย mysql
ใช้ คำสั่ง
PURGE BINARY LOGS TO 'mysql-bin.010';
ตัวเลขหลังเปลี่ยนเท่าที่มี
แล้ว ปิด Binary log ใน config my.cnf
#log-bin="....."
-
ผมทำการ Initial Import! จาก Master ไป Slave เสร็จแล้ว เปรียบเทียบข้อมูลกัน 2 เครื่องไม่เท่ากันครับ
เท่าที่ตรวจสอบผ่านๆ ดู ก็จะมีตารางใหญ่ๆ เช่น ksklog, opitemrece ที่ต่างกันเป็น G เลยครับ ไม่ทราบท่านอื่นเป็นอย่างนี้บ้างหรือเปล่าครับ ;D
เฮ้...มีคนใช้ HeidiSQL ด้วย
แหม..มองไม่เห็นครับ ว่าเดิม size เท่าไร พอทำ initial import แล้ว เหลือเท่าไร แฟ้มสำคัญ ๆ ไม่น่าจะต่างกันมากครับ
-
จากการแนะนำของอ.แหละครับ ;D(ขออภัยถ้าจำผิดนะครับ) ;D ;D ;D
ขนาดของ Database Master ขนาด 33.6 G ส่วน Database slave หลัง Initial แล้ว ได้ขนาด 30.5 G
ตารางที่ตรวจสอบ จะเป็นกับตาราง opitemrece,ksklog เป็นต้นครับ
มีขนาดห่างกัน เป็น G เลยครับ ???
-
... น่าจะเป็นที่การกำหนด my.cnf ตรง max_allowed_packet ไว้น้อยเกินไปครับ
ท่าน yord ต้องลองไปปรับเพิ่มค่าของ max_allowed_packet ที่ [mysqldump] ดูครับ ....
ผมก็เคยเจอครับ ที่พอ Initial Import แล้วตาราง ksklog มีขนาดลดลง(ข้อมูลมาไม่ครบ) เลยลองใหม่ แล้วนั่งเฝ้ามองเวลาที่กำลัง Initial Import เลย พอถึงตาราง ksklog ทำไปได้สักพักจะฟ้องเลยว่า ตั้งค่าของ max_allowed_packet ไว้ไม่พอ แล้วก็จะข้ามไปตารางต่อไปเรื่อยๆ จนเสร็จ
พอไปเพิ่มค่าของ max_allowed_packet แล้วลองทำใหม่ก็ไม่มีปัญหา ผ่านสบายครับ ... :D ...
-
ขอบคุณมากครับ อ.ขวด(ขออนุญาติพิมพ์ภาษาไทยเลยนะครับ) ;D ;D ;D
-
ถ้าไม่ได้ทำ replication slave โดย mysql น่าจะลบได้ครับ
ต้องรอถาม อ.ชัยพรว่า replication ของ hosxp ใช้ file นี้ไหมด้วย
ถ้าลบได้ และ ไม่ใช้ replication slave โดย mysql
ใช้ คำสั่ง
PURGE BINARY LOGS TO 'mysql-bin.010';
ตัวเลขหลังเปลี่ยนเท่าที่มี
แล้ว ปิด Binary log ใน config my.cnf
#log-bin="....."
ถ้าลบแล้วอย่าลืมแก้ไขไฟล์ mysql-bin.index ด้วย
ผมเคยทดลองดูแล้ว เวลาลบ mysql-bin.xxxxxx ขึ้นอยู่กับว่าจะลบทั้งหมดหรือบางส่วน
ถ้าลบบางส่วนเช่น mysql-bin.xxxxx1 - mysql-bin.xxxx10 ก็เข้าไปแก้ไข mysql-bin.index ลบชื่อไฟล์ที่เราลบออกไปด้วย
ถ้าจำไม่ผิด mysql-bin.xxxxxx จะช่วยเราได้ตอน database crash ตอนที่ mysql จะ recovery
ข้อมูลตอนมีอาการ hang แล้ว restart ขึ้นมาใหม่
ถ้าไงรอ อ. ตอบอีกทีครับ
-
ขอบคุณครับ อ.เข้ม
แล้วตรง max_allowed_packet ขึ้นอยู่กับแรมหรือเปล่าครับ
ผมลองเข้าไปดูมันเท่ากับ 16M ผมลองเปลี่ยนเป็น 64M แล้วจะลอง Initial ใหม่ครับว่าได้หรือเปล่าครับ ;D ;D ;D
-
สงสัยต่ออีกนิดครับ ;D
ว่ามันเกี่ยวกับอะไรครับ
ว่าตอนที่เราเข้าโปรแกรม HOSxP ในตอนแรกทำไมมันจะค้างไปประมาณ 1 นาที ถึงจะเข้าโปรแกรมเสร็จน่ะครับ ??? ??? ???
-
แล้วตรง max_allowed_packet ขึ้นอยู่กับแรมหรือเปล่าครับ
... ไม่แน่ใจเหมือนกัน ;D ;D ;D ...
ผมลองเข้าไปดูมันเท่ากับ 16M ผมลองเปลี่ยนเป็น 64M แล้วจะลอง Initial ใหม่ครับว่าได้หรือเปล่าครับ ;D ;D ;D
... ที่ผมเจอ ผมตั้งไว้ 64M เปลี่ยนเป็น 128M ก็ยังไม่ได้ ต้องเป็นเป็น 256M ถึงผ่านแบบไม่มีปัญหา ของผม RAM 2G ครับ ใช้ XtraDB5.1.30 เหมือนกัน กับ CentOS 4.7 ครับ ... :D ....
-
สงสัยต่ออีกนิดครับ ;D
ว่ามันเกี่ยวกับอะไรครับ
ว่าตอนที่เราเข้าโปรแกรม HOSxP ในตอนแรกทำไมมันจะค้างไปประมาณ 1 นาที ถึงจะเข้าโปรแกรมเสร็จน่ะครับ ??? ??? ???
... เป็นมานานแล้วหรือเพิ่งเป็นครับ
หลังทำ Initial Import แล้ว ลองสั่ง Drop Trigger ดูด้วยนะครับ ... :D ...
-
เพิ่งเป็นครับ อ.ขวด(กับข้อมูลที่เพิ่งนำเข้าครับ) ???
-
สงสัยต่ออีกนิดครับ ;D
ว่ามันเกี่ยวกับอะไรครับ
ว่าตอนที่เราเข้าโปรแกรม HOSxP ในตอนแรกทำไมมันจะค้างไปประมาณ 1 นาที ถึงจะเข้าโปรแกรมเสร็จน่ะครับ ??? ??? ???
เพิ่ม
query_cache_size= 256M
ดูนะครับ (ผมก็เคย มาก่อนครับ)
-
แล้วตรง max_allowed_packet ขึ้นอยู่กับแรมหรือเปล่าครับ
... ไม่แน่ใจเหมือนกัน ;D ;D ;D ...
ผมลองเข้าไปดูมันเท่ากับ 16M ผมลองเปลี่ยนเป็น 64M แล้วจะลอง Initial ใหม่ครับว่าได้หรือเปล่าครับ ;D ;D ;D
... ที่ผมเจอ ผมตั้งไว้ 64M เปลี่ยนเป็น 128M ก็ยังไม่ได้ ต้องเป็นเป็น 256M ถึงผ่านแบบไม่มีปัญหา ของผม RAM 2G ครับ ใช้ XtraDB5.1.30 เหมือนกัน กับ CentOS 4.7 ครับ ... :D ....
ต้องตั้ง max_allowed_packet ที่ master และ slave ให้เท่ากันหรือเปล่าครับ
-
กระทู้ที่เกี่ยวข้อง
http://hosxp.net/index.php?option=com_smf&Itemid=28&topic=9849.0
http://hosxp.net/index.php?option=com_smf&Itemid=28&topic=7824.msg41441
-
สงสัยต่ออีกนิดครับ ;D
ว่ามันเกี่ยวกับอะไรครับ
ว่าตอนที่เราเข้าโปรแกรม HOSxP ในตอนแรกทำไมมันจะค้างไปประมาณ 1 นาที ถึงจะเข้าโปรแกรมเสร็จน่ะครับ ??? ??? ???
เพิ่ม
query_cache_size= 256M
ดูนะครับ (ผมก็เคย มาก่อนครับ)
ยังเป็นเหมือนเดิมครับท่าน ;D
-
???
-
... ท่าน yord ลองเปลี่ยน my.cnf ไปใช้เหมือนใน server จริง ตามที่ผมแนะนำในอีกกระทู้หรือยังครับ เผื่อจะได้ทราบว่าที่ช้าเนี่ยมาจากการ config MySQL หรือเปล่า
แล้วก็ลอง Drop Trigger ดู รวมทั้ง ดูว่าเปิดใช้งาน function GetSerialNumber อยู่หรือเปล่า หรือลองสั่ง Upgrade Structure ดูใหม่อีกสักครั้งครับ ... :D ...
-
ผมตั้ง max_allowed_packet = 1024 แล้ว ยังมาไม่หมดเลยครับ
*** mysql 5.1.30 32bit
centos 5.0 32bit
server hp ml110 32bit
memory 4 GB
-
ของผมก็เป็นเหมือนกันครับ
ผมแก้โดยเข้า emergency แล้ว restore ข้อมูลเก่าที่ backupไว้ก่อน แล้วค่อยสั่ง replication
ครับ.....
-
หลังจากทำ Initial ควร Check Slave ก่อน แล้วค่อยรัน Replicate Agent
-
ครับ ผม จา...ลองดูครับ ;D ;D ;D
-
หลังจากทำ Initial ควร Check Slave ก่อน แล้วค่อยรัน Replicate Agent
ผมก็ทำแบบ พี่ nuttavut
-
Initial Import! หลายๆ ครั้งจะเป้นอะไรไหมครับ
เท่าที่จำได้ผม ได้ทำ Initial Import! ประมาณ 3 ครั้งแล้วครับ
-
... น่าจะเป็นที่การกำหนด my.cnf ตรง max_allowed_packet ไว้น้อยเกินไปครับ
ท่าน yord ต้องลองไปปรับเพิ่มค่าของ max_allowed_packet ที่ [mysqldump] ดูครับ ....
ผมก็เคยเจอครับ ที่พอ Initial Import แล้วตาราง ksklog มีขนาดลดลง(ข้อมูลมาไม่ครบ) เลยลองใหม่ แล้วนั่งเฝ้ามองเวลาที่กำลัง Initial Import เลย พอถึงตาราง ksklog ทำไปได้สักพักจะฟ้องเลยว่า ตั้งค่าของ max_allowed_packet ไว้ไม่พอ แล้วก็จะข้ามไปตารางต่อไปเรื่อยๆ จนเสร็จ
พอไปเพิ่มค่าของ max_allowed_packet แล้วลองทำใหม่ก็ไม่มีปัญหา ผ่านสบายครับ ... :D ...
Initial Import
ค้างที่ ksklog นานมากกำลังรออยู่เป็นชั่วโมง
-
ของผมจะค้างที่ ksklog, opitemrece นานมากๆ โดยเฉพาะ opitemrece น่ะนานมากประมาณ 4-5 ชม.ได้ครับ ครั้งก่อนที่ทำ Initial Import เวลาโดยรวม คือ 8 ชั่วโมงครับ ;D
-
ประมาณ 6-8 ชม. ผมเครีย ksklog ออก ;D :D
-
คร้าบ ;D
-
ของผมจะค้างที่ ksklog, opitemrece นานมากๆ โดยเฉพาะ opitemrece น่ะนานมากประมาณ 4-5 ชม.ได้ครับ ครั้งก่อนที่ทำ Initial Import เวลาโดยรวม คือ 8 ชั่วโมงครับ ;D
ทำตอนกลางคืนจะโดนเรียกมาหรือเปล่า กลัวจัง ขีเกียจขับรถมา 30 km ไปกลับ 60 Km ได้ค่าน้ำมัน 200 อิอิ
-
ผมทำตอนกลางคืน ครับ ไม่ได้กลับบ้าน อิอิอิ ;D
-
แต่ล่าสุด เมื่อคืนทำแล้ว ยังไม่สำเร็จครับ ;D ;D ;D
-
ไม่ทราบว่า อ.ท่านใด มีวิธีที่จะนำเฉพาะตารางบางตาราง นำเข้าไปยัง slave (จาำก master to slave) ครับ ;D
-
เครื่องหลัก : ใช้สายฟ้า แล้ว select ตารางที่ต้องการ กดปุ่ม save ครับ (ได้ file เป็น .cds)
แล้วก็เอาไปใส่เครื่องที่ต้องการ
เครื่องรอง : ใช้สายฟ้า select ตารางที่ต้องการ แก้ไข select * เป็น delete กด exec
select ตารางที่ต้องการอีกครั้ง กดปุ่ท open เลือกตารางที่ save มาจากเครื่องหลัก (file .cds) กดปุ่ม append เท่านี้แหละครับ
-
ขอบคุณครับ อ. ผมลืมซะสนิทเลยว่าทำแบบนี้ก็ได้ หุหุหุ ;D
-
อย่าลืมดูฟิล์ดในตารางที่นำเข้า ที่เกี่ยวข้องกับตาราง serial ด้วยนะครับ ;)
-
อย่าลืมดูฟิล์ดในตารางที่นำเข้า ที่เกี่ยวข้องกับตาราง serial ด้วยนะครับ ;)
ถูกต้องครับ
-
อ.ครับ ตาราง opitemrece ของผมมีขนาด 10G ครับ เวลาเข้าในที่สายฟ้า แล้ว run ข้อมูลทั้งหมด นานมากครับ จนทำให้แฮ้งค์ไปเลยครับ ถ้าจะเป็นการ Initial Import เฉพาะตารางเข้า slave มีวิธีหรือเปล่าครับ อ. ;D
-
อ.ครับ ตาราง opitemrece ของผมมีขนาด 10G ครับ เวลาเข้าในที่สายฟ้า แล้ว run ข้อมูลทั้งหมด นานมากครับ จนทำให้แฮ้งค์ไปเลยครับ ถ้าจะเป็นการ Initial Import เฉพาะตารางเข้า slave มีวิธีหรือเปล่าครับ อ. ;D
โอวววววววววว.....ถ้าใหญ่ขนาดนั้น แค่ select ตารางมาเพื่อ save ก็ยากแล้วครับ
คงต้อง initial ใหม่ครับ
-
อ.ครับ ผมทำ Initial Import หลายครั้งแล้วครับ แต่ไม่เท่ากันสักที ครับ ??? ??? ??? :'(
-
ถ้าไม่ได้ทำ replication slave โดย mysql น่าจะลบได้ครับ
ต้องรอถาม อ.ชัยพรว่า replication ของ hosxp ใช้ file นี้ไหมด้วย
ถ้าลบได้ และ ไม่ใช้ replication slave โดย mysql
ใช้ คำสั่ง
PURGE BINARY LOGS TO 'mysql-bin.010';
ตัวเลขหลังเปลี่ยนเท่าที่มี
แล้ว ปิด Binary log ใน config my.cnf
#log-bin="....."
ถ้าลบแล้วอย่าลืมแก้ไขไฟล์ mysql-bin.index ด้วย
ผมเคยทดลองดูแล้ว เวลาลบ mysql-bin.xxxxxx ขึ้นอยู่กับว่าจะลบทั้งหมดหรือบางส่วน
ถ้าลบบางส่วนเช่น mysql-bin.xxxxx1 - mysql-bin.xxxx10 ก็เข้าไปแก้ไข mysql-bin.index ลบชื่อไฟล์ที่เราลบออกไปด้วย
ถ้าจำไม่ผิด mysql-bin.xxxxxx จะช่วยเราได้ตอน database crash ตอนที่ mysql จะ recovery
ข้อมูลตอนมีอาการ hang แล้ว restart ขึ้นมาใหม่
ถ้าไงรอ อ. ตอบอีกทีครับ
อ.ครับ ตกลงว่า ลบได้หรือเปล่าครับ เจ้าตัว mysql-bin.xxxxx เนี่ยครับ ??? ;D
-
??? ??? ??? ;D
-
ถ้าไม่ได้ทำ replication slave โดย mysql น่าจะลบได้ครับ
ขอแก้ไขครับ ถึงทำ replication slave ก็ลบได้ครับ
ปัจจุบันที่ รพ.ทำ slave ไว้ 3 ตัว
ถ้า show slave status ว่า slave อ่าน master log(mysql-bin.......) ถึงไฟล์ไหนแล้ว
ผมก็จะลบ โดยใช้คำสั่ง purge ถึงหรือใกล้เคียงจุดนั้นครับ
หมายเหตุ คำสั่ง purge แก้ไขไฟล์ mysql-bin.index ให้เองครับ
(ดีกว่าลบโดยใช้ file manager หรือ del ครับ)
-
เหอๆ คืนนี้ลองทำ Initial Import อีกครั้ง โดยปรับ max_allow_packet = 1024M ทั้ง Master and Slave ดูซิว่า ฐานข้อมูลจะมาเท่ากันหรือไม่ หิๆๆ ;D
-
ผมเคยปรับ max_allow_packet = 1024M ทั้ง Master and Slave แล้วครับท่าน yord ผลที่ได้ก็เหมือนเดิมครับ คือ ตารางใหญ่ ๆ ยังมาไม่หมด
-
นั่นสิครับ ตอนนี้มาถึงตาราง opitemrece ยังติดอยู่ที่ 2.3Gb ครับ ของ Master 11Gb ครับ ยังไม่ทราบว่าจะได้หรือเปล่า ถ้าเหมือนท่าน stp ว่าล่ะก็ ??? ไม่ทราบว่าจะทำไงต่อดีครับ ??? ;D
-
สุดท้ายก็ยังได้ไม่ครบอย่างที่ท่าน stp ว่าแหละครับ 11G มาแค่ 6G เองครับ ทำไงต่อดีครับ อ. ยังไม่ได้ใช้ slave มาเป็นเดือนแล้วครับ มีวิธีที่นำเข้าเฉพาะตารางหรือเปล่าครับ ???
-
แนะนำให้ใช้ xtrabackup แทนการ Initial import ครับ รับรองข้อมูลตรงกับ เป่ะ เลยครับ :D
-
เป่ะ เลยครับ ;D :D ;) :D ;D
-
run replicate แล้วมี error ครับ ???
08/08/2552 18:06:19 192.168.0.5/hos #42000You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'and wait_save = 'Y'' at line 1 CLI>อญ SQL>delete from operation_invent where operation_id = and wait_save = 'Y'
08/08/2552 18:18:46 192.168.0.9/hos #42000You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'where hos_guid in ('{1D9ADA66-5742-453B-8384-883AE43F5B31}')' at line 1 CLI>ห้องบัตร SQL>update ovst set pt_subtype= where hos_guid in ('{1D9ADA66-5742-453B-8384-883AE43F5B31}')
??? ??? ???
-
ทำให้ข้อมูลไม่เท่ากันครับ ???
-
อ้างจาก: yord ที่ กรกฎาคม 14, 2009, 03:13:32 PM
สงสัยต่ออีกนิดครับ
ว่ามันเกี่ยวกับอะไรครับ
ว่าตอนที่เราเข้าโปรแกรม HOSxP ในตอนแรกทำไมมันจะค้างไปประมาณ 1 นาที ถึงจะเข้าโปรแกรมเสร็จน่ะครับ
เพิ่ม
query_cache_size= 256M
ดูนะครับ (ผมก็เคย มาก่อนครับ)
ยังเป็นเหมือนเดิมครับท่าน
วันนี้ลองปรับ max_heap_table_size จากเดิม 1024 เป็น 256 ปรากฏว่าเข้าโปรแกรมแป๊บเดียวเองครับ ;D ??? ;D
-
ขอคำแนะนำการใช้ xtrabackup แทนการ Initial import ด้วยครับ ใช้ไม่เป็นครับ
-
ลองดูตามนี้ครับ ท่าน ;D
http://hosxp.net/index.php?option=com_smf&Itemid=28&topic=9623.0
http://hosxp.net/index.php?option=com_smf&Itemid=28&topic=10351.0
http://hosxp.net/index.php?option=com_smf&Itemid=28&topic=11513.0 ;D ;D ;D
-
อ่านครบทุกหน้าตาลายเลย ???
ปัญหานี้ อิอิ ผมจะได้รู้้เวลาของตัวเอง อิอิ :o
-
ล่าสุด ทดสอบทำการ Initial Import จาก Master MySQL 5.1.30 Database = 33G ไป Slave MySQL 5.1.37 -percona-log XtraDB 6 Database = 27G ;D ;D ;D
Master table opitemrece = 11.4G
Slave table opitemrece = 8.3G
-
ของผม Initial Import แล้วข้อมูลไม่ มาครับ
Initial มาเก็บใน notebook ครับ เลย ใช้วิธี back up แล้วค่อยมา restore เอาครับ
งงไปเลย ยอมรับครับ เวอร์ชั่นเก่าครับ อ. ครับ :(