BMS-HOSxP Community
HOSxP => MySQL => ข้อความที่เริ่มโดย: taewan ที่ กุมภาพันธ์ 14, 2011, 10:49:05 AM
-
ตอนนี้ผมมีปัญหาในการทำงานคือ ระบบห้องจ่ายยา --> ใบสั่งยา Scan จาก IPD ผมใช้งานไม่ได้ แต่หลัง v.3.53.12.07 ใช้งานได้ปกติครับ ปัญหาใน 3.54.02.10b คือ เวลาเรียกข้อมูลจะทำให้ระบบค้างไปเลย แต่ถ้าหาก Empty Table ipt_doc_scan และ ipt_doc_scan_image แล้วเริ่มทำงานการ Scan ใหม่ ก็ทำงานได้ปกติครับ
แต่หาก Restore ข้อมูล table ipt_doctor_scan และ ipt_doctor_scan_image กลับมา ก็ทำให้ระบบค้างเหมือนเดิม
เป็นมานานแล้วครับ ผมแก้ไม่ตกจริงๆ ทั้งติดตั้ง Linux และ MySQL ใหม่ หลายรอบแล้วครับ
ผมใช้ Centos 5.5 MySQL Percona 5.1.3 RAM 12 GB. ครับ
ขอบคุณล่วงหน้ามากครับ
-
innodb_buffer_pool_size = 8G ก็คงจะดีนะครับ
slow_query_log เอาออกเหอะครับ
innodb_thread_concurrency = 0 อันนี้เป็น 0 ดีกว่า
innodb_doublewrite = 0 ไม่ต้อง Double ก็ได้ครับ
table_cache = 1800 Cache ซัก ประมาณนี้ละกันครับ
max_heap_table_size = 1024M ให้มันประมาณนี้ครับ
### *** Comment 5 *** ###
#*** MyISAM Specific options***
# 50 percent of RAM
myisam_sort_buffer_size = 5120M
#*** MyISAM Specific options***
# 50 percent of RAM
myisam_sort_buffer_size = 5120M
# MyISAM tables, you should still set it to 8-64M
key_buffer_size = 32M
# RAM 4GB use 8M
join_buffer_size = 24M
sort_buffer_size = 24M
read_buffer_size = 24M
read_rnd_buffer_size = 24M
bulk_insert_buffer_size = 32M
myisam_sort_buffer_size = 1024M
myisam_max_sort_file_size = 1024M
myisam_repair_threads = 8
# Automatically check and repair not properly closed MyISAM tables.
myisam_recover
ทำไม config หลายทีจังเลยครับ... ??? ??? ???
ไม่ต้องเยอะขนาดนั้นก็ได้ครับ ซัก 1024M ก็พอ
-
ขอบคุณครับ เดี๋ยวลองดู ได้ผลประการไดจะแจ้งให้ทราบครับ
-
ยังไม่หมดนะครับ รอ อ. ท่านอื่นมาตอบด้วยนะครับ...
key_buffer =4096M เยอะไปครับ ซัก 256M พอแล้ว
....
-
เอาอย่างนี้ครับ ขอแสดงความคิดเห็นว่า น่าจะทำ server ใหม่ทั้งหมด ใช้ Oracle Linux 5.6 Ext4 text mode +MySQL5.5.9 และปรับ my.cnf ใหม่หมดครับ ทำตารางเป็น innodb ด้วย จะทำให้ระบบดีขึ้นถนัดตา ยินดีให้คำแนะนำครับ จัดการเลยครับ :D :D :D :D :D :D :D :D
-
การเข้าไปแก้ my.cnf ใน server จริง ระวัง mysql error นะครับ ควร backp my.cnf ไว้ก่อนครับ
...ขอย้ำ
-
tanoy999 ว่างๆ ช่วยแก้ my.cnf ของพี่บ้างนะน้อง
-
เอาอย่างนี้ครับ ขอแสดงความคิดเห็นว่า น่าจะทำ server ใหม่ทั้งหมด ใช้ Oracle Linux 5.6 Ext4 text mode +MySQL5.5.9 และปรับ my.cnf ใหม่หมดครับ ทำตารางเป็น innodb ด้วย จะทำให้ระบบดีขึ้นถนัดตา ยินดีให้คำแนะนำครับ จัดการเลยครับ :D :D :D :D :D :D :D :D
ถูกนะครับ.. :D ...แต่ขอเสริม...นิดนึงครับ
เพียงแต่ว่า...บางอย่างอาจจะแก้ไขไม่ได้เมื่อ Run MySQL ไปแล้ว...แต่ก็ใช่ว่าจะแก้ไขไม่ได้..(แต่อย่าแก้ไขดีกว่า)..
อย่างเช่น innodb_log_file_size เป็นต้น
ส่วนใหญ่ตัวแปรจะเป็นแบบ Dynamic สามารถแก้ไขได้ ไม่มีปัญหาครับ..
-
table ipt_doctor_scan และ ipt_doctor_scan_image
ตารางยังไม่ innodb ครับ
-
;D ;D : - ถ้ากรณีแก้แล้ว Start MySQL ไม่ขึ้น ไปดูที่ /var/lib/mysq/xxxxx.err อะครับ จะมีรายละเอียดอยู่ว่า Start ไม่ขึ้น เป็นปัญหาที่ตัวแปรตัวไหน ครับ
- หรือกรณีถ้าหาไม่เจอจริงๆ ก็ เอา my.cnf ที่ Backup ไว้ มาใส่กลับที่เดิม ก็ Start MySQL ได้
-
หลายเข้าช่วยเต็มเลย
-
ขอบคุณทุกๆท่านครับ เดี๋ยวผมจะลองลื้อลงใหม่ใหม่อีกทีครับ
-
แนะนำ ลง server ใหม่ดีกว่านะครับ
พอดีอยากไปเที่ยวเชียงใหม่
อิอิอิ ปีใหม่ไปแบบ 2 วัน 1 คืน
ลงเป็น Oracle Linux 6.0 Ext4 text mode + MySQL-5.5.9 ตอนนี้รันมา 2 วัน ยังไม่เกิดปัญหา
ผมลอง RHEL-6.0 + MySQL-5.5.9 เร็วมากๆๆๆๆๆๆ เลย
สนใจ MSN คุย
- Tepprisan_1921@hotmail.com
- Tepprisan19012521@gmail.com
พอดีเห็น มี MY.CNF ปรับไม่ถูกต้องหลายตำแหน่ง
tanoy999 ว่างๆ ช่วยแก้ my.cnf ของพี่บ้างนะน้อง
หน้าสงสาร ระบบ รพ.
-
ลงเป็น Oracle Linux 6.0 Ext4 text mode + MySQL-5.5.9 ตอนนี้รันมา 2 วัน ยังไม่เกิดปัญหา
ผมลอง RHEL-6.0 + MySQL-5.5.9 เร็วมากๆๆๆๆๆๆ เลย
ขอลิ้งค์ดาวน์โหลด Oracle Linux 6.0 Ext4 text mode และ MySQL-5.5.9 ขอบคุณครับ
-
ลงเป็น Oracle Linux 6.0 Ext4 text mode + MySQL-5.5.9 ตอนนี้รันมา 2 วัน ยังไม่เกิดปัญหา
ผมลอง RHEL-6.0 + MySQL-5.5.9 เร็วมากๆๆๆๆๆๆ เลย
ขอลิ้งค์ดาวน์โหลด Oracle Linux 6.0 Ext4 text mode และ MySQL-5.5.9 ขอบคุณครับ
Oracle Linux 6.0
http://hosxp.net/index.php?option=com_smf&Itemid=28&topic=19825.0
http://download.softagency.net/MySQL/Downloads/MySQL-5.5/
-
ตอนนี้ผมมีปัญหาในการทำงานคือ ระบบห้องจ่ายยา --> ใบสั่งยา Scan จาก IPD ผมใช้งานไม่ได้ แต่หลัง v.3.53.12.07 ใช้งานได้ปกติครับ ปัญหาใน 3.54.02.10b คือ เวลาเรียกข้อมูลจะทำให้ระบบค้างไปเลย แต่ถ้าหาก Empty Table ipt_doc_scan และ ipt_doc_scan_image แล้วเริ่มทำงานการ Scan ใหม่ ก็ทำงานได้ปกติครับ
แต่หาก Restore ข้อมูล table ipt_doctor_scan และ ipt_doctor_scan_image กลับมา ก็ทำให้ระบบค้างเหมือนเดิม
เป็นมานานแล้วครับ ผมแก้ไม่ตกจริงๆ ทั้งติดตั้ง Linux และ MySQL ใหม่ หลายรอบแล้วครับ
ผมใช้ Centos 5.5 MySQL Percona 5.1.3 RAM 12 GB. ครับ
ขอบคุณล่วงหน้ามากครับ
ส่ง Log file ของ MySQL เข้ามาได้หรือเปล่าครับ
-
รูปที่ 1 แสดงจำนวน Record ในปัจจุบันครับ
รูปที่ 2 แสดง Error ตอนเรียกดู ใบสั่งยา Scan จาก IPD ครับ
รูปที่ 3 แสดงจำนวน Record หลัง Empty Table แล้วเพิ่มรูป Scan เข้าไปใหม่ ใช้งานได้ปกติ
รูปที่ 4 แสดงฐานข้อเดิม แต่เปิดใช้งานด้วย v.3.53.12.7 สามารถเปิดได้ครับ
-
อ.ชัยพรขอ log ใน Server ครับท่าน
/var/lib/mysql/<hostname>.err
-
HOSxP_Attachment_HOSxP-Image.err
แฟ้มแนบ ลำดับที่ 4 ครับท่าน ;D
ทีเหลือเป็นบรรยายเหตุการณ์ครับผม ;D
-
;D ;D ;D ;D ;D
-
SQL ที่ฟ้อง Error
select i1.page_scan_datetime,i1.ipt_doctor_scan_image_id,i1.page_image as scan_image,i1.image_type
from ipt_doctor_scan i2,ipt_doctor_scan_image i1
where i1.ipt_doctor_scan_id in (44879)
order by i1.ipt_doctor_scan_image_id
หากเปลียนเป็น
select i1.page_scan_datetime,i1.ipt_doctor_scan_image_id,i1.page_image as scan_image,i1.image_type
from ipt_doctor_scan i2,ipt_doctor_scan_image i1
where i2.ipt_doctor_scan_id = i1.ipt_doctor_scan_id
and i1.ipt_doctor_scan_id in (44879)
order by i1.ipt_doctor_scan_image_id
แล้วลอง Run ดู มันใช้ได้นะครับ มันจะเกี่ยวข้องกันไหมครับ
-
ขอบคุณที่ช่วยตรวจสอบสาเหตุนะครับ ผมลองแก้ไขคำสั่งให้แล้วครับ ฝากทดสอบอีกครั้งใน 3.54.2.15c นะครับ
-
3.54.02.15c
อาการเหมือนเดิมครับ
-
คงต้องส่ง log file ของ mysql เข้ามาแล้วล่ะครับ
-
3.54.02.15c
อาการเหมือนเดิมครับ
;D ;D ;D ;D
-
SQL error ใน 3.54.2.15c ครับ
select i1.page_scan_datetime,i1.ipt_doctor_scan_image_id,i1.page_image as scan_image,i1.image_type
from ipt_doctor_scan i2,ipt_doctor_scan_image i1
where i1.ipt_doctor_scan_id in (44951)
and i1.ipt_doctor_scan_id = i1.ipt_doctor_scan_id
order by i1.ipt_doctor_scan_image_id
ตรงสีแดงน่าจะเป็น
i2.ipt_doctor_scan_id = i1.ipt_doctor_scan_id
ทดลองแบบนี้ได้ครับ รบกวน อ. ช่วยกรุณาตรวจสอบให้ด้วยครับ
-
น่าจะเปลี่ยน os+mysql+my.cnf +innodb เลยครับ .......อาจจะไม่เกี่ยวกัน แต่อยากให้ทำตรงนี้ก่อน
oracle linux 5.6/ 6.0+EXT4+mysql 5.5.9 ลองดูก่อน .......มันอาจไม่เกี่ยวกัน แต่ไม่ทำก็ได้ หรือทำก็ดี
??? ??? ??? ??? ??? ??? ??? ???
-
ครับ ช่วงที่รอ ผมจะทดลองทำดู เดี๋ยวรายงานผลให้ทราบครับ ;D
-
เอาใจช่วยครับ..........up structure +repair table ด้วยก็จะดี
-
ลองดูขนาดของฐานข้อมูลนะครับว่า MYISAM จะมีขนาดได้ 2 GB แต่สำหรับ Innodb ก็ 10-20 GB
MariaDB ผมไม่แน่ใจแต่จะดีกว่า MYISAM
ลองศึกษาจาก www.mysql.com จะเข้าใจและถูกต้อง
กว่าที่เป็นอยู่ เนื่องจากผมศึกษาจาก www.mysql.com นี้
ก็เข้าใจยากช่วงแรกๆ แต่ก้อไม่ยากเกินความสามารถ
MySQL 5.5 ออกแล้ว การเปลี่ยนแปลงที่สำคัญที่สุดคือย้ายมาใช้ InnoDB เป็น default storage engine แทน MyISAM เสียที หลังจากเตรียมการเรื่องนี้มานานหลายรุ่น
ผลก็คือ MySQL 5.5 จะได้ฟีเจอร์หลายๆ อย่างจาก InnoDB โดยเฉพาะเรื่องประสิทธิภาพ และความสามารถในการขยายตัว (scalability) เพิ่มเข้ามา ส่วนของใหม่อย่างอื่นก็คือปรับปรุงเรื่อง replication และคำสั่งใหม่อย่าง SIGNAL/RESIGNAL รายละเอียดอ่านกันเองใน What’s New in MySQL 5.5
เว็บไซต์ Help Net Security ระบุว่าในการทดสอบบนวินโดวส์ MySQL 5.5 มีประสิทธิภาพดีกว่า 5.1 เรื่อง read/write เฉพาะกรณีที่สูงสุดคือ 1,500% ส่วนบนลินุกซ์สูงสุด 360%
ที่มา - Help Net Security, blognone
http://oracle.in.th/?p=1081
-
ใน 3.54.3.14 ยังฟ้องเหมือนเดิมครับ
select i1.page_scan_datetime,i1.ipt_doctor_scan_image_id,i1.page_image as scan_image,i1.image_type from ipt_doctor_scan i2,ipt_doctor_scan_image i1
where i1.ipt_doctor_scan_id in (48228) and i1.ipt_doctor_scan_id = i1.ipt_doctor_scan_id
order by i1.ipt_doctor_scan_image_id
รบกวนอาจารณ์ช่วยตรวจสอบตรงสีแดงให้ด้วยครับ
-
จากคำสั่งในโพสต์ i1.ipt_doctor_scan_id = i1.ipt_doctor_scan_id
แปลกจัง i1.xxx=i1.xxx
-
ใน 3.54.3.14 ยังฟ้องเหมือนเดิมครับ
select i1.page_scan_datetime,i1.ipt_doctor_scan_image_id,i1.page_image as scan_image,i1.image_type from ipt_doctor_scan i2,ipt_doctor_scan_image i1
where i1.ipt_doctor_scan_id in (48228) and i1.ipt_doctor_scan_id = i1.ipt_doctor_scan_id
order by i1.ipt_doctor_scan_image_id
รบกวนอาจารณ์ช่วยตรวจสอบตรงสีแดงให้ด้วยครับ
แก้ไขให้แล้วครับใน 3.54.3.14b
-
ทดสอบใน 3.54.3.14b แล้ว ใช้งานได้ตามปกติแล้วครับ ;D
ขอบคุณมากครับ
(เล่นเอาผม ลง Linux, MySQL เสียคล่องเลย ;D ;D ;D)