ยินดีต้อนรับคุณ, บุคคลทั่วไป กรุณา เข้าสู่ระบบ หรือ ลงทะเบียน

เข้าสู่ระบบด้วยชื่อผู้ใช้ รหัสผ่าน และระยะเวลาในเซสชั่น

ThaiSEOBoard.comHost and DomainHost & Domain (general)Restart Mysql Service ถ้า service มันกิน ram เยอะ เขียนสคริปยังไงดี
หน้า: [1]   ลงล่าง
พิมพ์
ผู้เขียน หัวข้อ: Restart Mysql Service ถ้า service มันกิน ram เยอะ เขียนสคริปยังไงดี  (อ่าน 946 ครั้ง)
0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้
@Roverpost
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 89
ออฟไลน์ ออฟไลน์

กระทู้: 1,816



ดูรายละเอียด เว็บไซต์
« เมื่อ: 15 ธันวาคม 2016, 10:18:30 »

สอบถามผู้รู้หน่อยครับ

ผมต้องการทำสคริปบน linux สำหรับตรวจสอบ Service ของ Mysql อย่างเดียว ว่า Service นี้มันกิน Ram ไปทั้งหมดกี่% ถ้ามันกิน Ram ไปมากกว่า 2.5% ให้ทำการ Restart Mysql Service ทันที
ผมนั่ง งม ทั้งคืน ไม่รู้ต้องไง

รบกวนผู้รู้ด้วยครับ
บันทึกการเข้า

Shibot โปรแกรมแชทบอท พร้อมระบบไลฟ์สด ที่สามารถเพิ่มยอดขายได้จริง
xvlnw.com
Verified Seller
เจ้าพ่อบอร์ดเสียว
*

พลังน้ำใจ: 493
ออฟไลน์ ออฟไลน์

กระทู้: 5,905



ดูรายละเอียด เว็บไซต์
« ตอบ #1 เมื่อ: 15 ธันวาคม 2016, 13:58:16 »

เริ่มจาก config MySQL ให้ใช้แรมให้เหมาะสมกับที่มี ในไฟล์ my.cnf ก็ได้ครับ

จากนั้น ลองใช้พวก MySQLTuner ช่วยเช็คค่าต่างๆ มันจะบอกว่า MySQL จะสามารถใช้แรมสูงสุดได้เท่าไร พอเป็นแนวทางได้ครับ
บันทึกการเข้า

picharnan
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 90
ออฟไลน์ ออฟไลน์

กระทู้: 1,400



ดูรายละเอียด
« ตอบ #2 เมื่อ: 15 ธันวาคม 2016, 14:42:07 »

สามารถทำได้หลายวิธีมากครับ ผมขอเสนอวิธีการใช้ PHP ร่วมกับ cron ครับ

1. เขียน php โดยใช้ function exec โดยเรียก ps aux | grep mysql
2. นำผลลัพธิ์ที่ได้มาแบ่งจากช่องว่าง และข้อมูลชุดที่ 4 จะเป็น % ที่ mysql ใช้งานครับ
3. เมื่อตรวจสอบ % ได้เราก็ใช้ function exec เรียก /etc/init.d/mysql restart เพื่อทำการ restart mysql servcie
4. สั่ง cron เรียกไฟล์ php ของเราแบบ cli ทุก ๆ กี่นาทีก็ว่ากันไปครับ

แต่จริง ๆ ผมว่าเป็นการแก้ปัญหาที่ไม่ถูกต้องครับ ผมว่าลองปรับแต่งโปรแกรมที่ไปเรียก sql ให้ไม่ทำงานหนักจะดีกว่าครับ
อาจจะไปดู mysql slow log แล้วดูว่าตัวไหนที่พอปรับได้ แล้วเอามาปรับการ query ใหม่จะดีกว่าครับ

ปัญหา SQL ใช้ทรัพยากรเยอะ เจอกันทุกคนครับ สู้ ๆ ครับ

 Tongue
บันทึกการเข้า
darkknightza
เจ้าพ่อบอร์ดเสียว
*

พลังน้ำใจ: 167
ออฟไลน์ ออฟไลน์

กระทู้: 4,245



ดูรายละเอียด เว็บไซต์
« ตอบ #3 เมื่อ: 21 ธันวาคม 2016, 13:42:23 »

สามารถทำได้หลายวิธีมากครับ ผมขอเสนอวิธีการใช้ PHP ร่วมกับ cron ครับ

1. เขียน php โดยใช้ function exec โดยเรียก ps aux | grep mysql
2. นำผลลัพธิ์ที่ได้มาแบ่งจากช่องว่าง และข้อมูลชุดที่ 4 จะเป็น % ที่ mysql ใช้งานครับ
3. เมื่อตรวจสอบ % ได้เราก็ใช้ function exec เรียก /etc/init.d/mysql restart เพื่อทำการ restart mysql servcie
4. สั่ง cron เรียกไฟล์ php ของเราแบบ cli ทุก ๆ กี่นาทีก็ว่ากันไปครับ

แต่จริง ๆ ผมว่าเป็นการแก้ปัญหาที่ไม่ถูกต้องครับ ผมว่าลองปรับแต่งโปรแกรมที่ไปเรียก sql ให้ไม่ทำงานหนักจะดีกว่าครับ
อาจจะไปดู mysql slow log แล้วดูว่าตัวไหนที่พอปรับได้ แล้วเอามาปรับการ query ใหม่จะดีกว่าครับ

ปัญหา SQL ใช้ทรัพยากรเยอะ เจอกันทุกคนครับ สู้ ๆ ครับ

 Tongue
wanwan017
บันทึกการเข้า

หาเงินวันละ350บาท มั่นคง จ่ายมาสิบปีแล้ว
หารายได้กับ popup เจ้านี้ เรทแรงคลิ๊ก
Hosting อันดับ 1 คุณภาพสูง ราคาถูก จัดเลย
โดเมนเนมสวยๆ ราคาถูก จดกับเราสิที่นี่
dekdoo
สมุนแก๊งเสียว
*

พลังน้ำใจ: 58
ออฟไลน์ ออฟไลน์

กระทู้: 891



ดูรายละเอียด เว็บไซต์
« ตอบ #4 เมื่อ: 21 ธันวาคม 2016, 19:54:45 »

ผมเกรงว่า ไอ้สคริปนี้มันจะกิน service ซะเองนะครับ
บันทึกการเข้า

หน้า: [1]   ขึ้นบน
พิมพ์