เจอปัญหา mysql ชอบค้างตอนเที่ยงทุกวันครับ

เวลาอื่นปกติ ชอบมีปัญหาค้างตอนเที่ยงครับ เฉพาะ mysql

[TABLE=“class: list, width: 2040”]
[TR]
[TD=“class: listtitle”]Subject: Warning: The system load average is 136.82[/TD]
[TD=“class: listtitle, align: right”]Today at 11:57[/TD]
[/TR]
[TR]
[TD=“class: listwrap, colspan: 2”]
This is an automated message notifying you that the 5 minute load average on your system is 136.82.
This has exceeded the 10 threshold.

One Minute - 134.45
Five Minutes - 136.82
Fifteen Minutes - 87.69

top - 11:57:34 up 1 day, 22:32, 0 users, load average: 190.15, 152.46, 96.90
Tasks: 684 total, 1 running, 672 sleeping, 0 stopped, 11 zombie
Cpu(s): 9.4%us, 2.4%sy, 0.0%ni, 75.6%id, 3.0%wa, 4.8%hi, 4.7%si, 0.0%st
Mem: 4049996k total, 4030732k used, 19264k free, 5932k buffers
Swap: 10223608k total, 5364800k used, 4858808k free, 74360k cached

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
14094 root 15 0 53108 9m 1012 S 2.3 0.3 39:46.42 ./home/radio/sc_serv /home/radio/sc_serv.conf
62 root 10 -5 0 0 0 S 1.9 0.0 5:46.17 [kblockd/2]
13182 mysql 18 0 585m 35m 3108 S 0.4 0.9 30:26.97 /usr/sbin/mysqld --basedir=/ --datadir=/var/lib/mysql --user=mysql --log-error=/var/lib/mysql/domain1.com.err --pid-file=/var/lib/mysql/domain1.com.pid
19358 apache 16 0 168m 14m 5420 D 0.4 0.4 0:02.96 /usr/sbin/httpd -k start -DSSL
21000 apache 16 0 120m 11m 3936 D 0.3 0.3 0:00.93 /usr/sbin/httpd -k start -DSSL
224 root 10 -5 0 0 0 D 0.3 0.0 1:08.94 [kswapd0]
14006 apache 16 0 162m 11m 5604 D 0.2 0.3 0:06.45 /usr/sbin/httpd -k start -DSSL
20541 apache 16 0 156m 34m 4060 D 0.2 0.9 0:03.12 /usr/sbin/httpd -k start -DSSL
22350 panuwat 18 0 8728 620 512 D 0.2 0.0 0:00.08 /bin/sh -c /usr/local/bin/php /home/user2/domains/domain2.com/public_html/tests.php
19391 apache 16 0 168m 13m 5492 D 0.2 0.3 0:03.49 /usr/sbin/httpd -k start -DSSL
12890 root 16 0 10256 616 548 S 0.1 0.0 10:17.26 hald-addon-storage: polling /dev/hdd
19922 apache 16 0 138m 13m 5420 D 0.1 0.3 0:02.27 /usr/sbin/httpd -k start -DSSL
20432 apache 16 0 122m 10m 5036 D 0.1 0.3 0:02.45 /usr/sbin/httpd -k start -DSSL
1664 root 5 -10 5100 3048 1904 S 0.1 0.1 0:00.47 iscsid
2061 root 18 0 11648 316 240 S 0.1 0.0 0:07.85 irqbalance
19355 apache 15 0 167m 9476 4276 D 0.1 0.2 0:03.49 /usr/sbin/httpd -k start -DSSL
19854 apache 16 0 161m 12m 5276 D 0.1 0.3 0:02.00 /usr/sbin/httpd -k start -DSSL
19888 apache 16 0 136m 12m 4156 D 0.1 0.3 0:02.92 /usr/sbin/httpd -k start -DSSL
20569 apache 16 0 154m 38m 3988 D 0.1 1.0 0:02.79 /usr/sbin/httpd -k start -DSSL
20891 apache 15 0 116m 8608 3432 D 0.1 0.2 0:00.67 /usr/sbin/httpd -k start -DSSL
21101 apache 16 0 155m 26m 3740 D 0.1 0.7 0:03.27 /usr/sbin/httpd -k start -DSSL
21942 apache 16 0 120m 13m 3648 S 0.1 0.3 0:00.46 /usr/sbin/httpd -k start -DSSL
477 root 10 -5 0 0 0 D 0.1 0.0 64:19.39 [kjournald] [/TD]
[/TR]
[/TABLE]

ที่เคยเจอมาอาการประมาณนี้ ดิสใกล้ ไปแล้วครับ. (ค่า Top จาก DA message ค่าไม่ค่อยตรง ดูผ่าน MRTG ดีกว่า)

ที่ผมเคยทำแก้จากง่ายไปยาก

  1. update firmware ของ server (กรณีเครื่อง cisco แนะนำให้ทำ)

  2. เอา SSD มารัน MySQL ดู

  3. เปลี่ยนชุด Storage ใหม่ทั้งหมด

แต่ถ้าคิดว่าเป็นที่ user เอาอะไรมา run แปลก ๆ ก็ limit การใช้ mysql ของ user ดูครับ. และหรือลองเขียน cron ให้ปิดการเชื่อม inter แบบอัตโนมัติในเวลาที่มักจะมีปัญหาดูครับ.

สุดท้ายอย่าลืมดู log ประกอบด้วย

[COLOR=#333333]4.8%hi, 4.7%si

เอ่อ ถ้าบอกว่าตอนเที่ยง ลองเปิด mytop มารอดูดีกว่าครับ

[/COLOR]

เครื่องเป็น VPS ครับ VPS ตัวอื่นปกติดีครับ จะเป็นตัวนี้ตัวเดียวครับผม เพิ่งมาเป็นได้ 2 วัน ประมาณตอนเที่ยงๆ

my.cnf เครื่องตั้งไว้แบบนี้ครับ CPU 4 Cores Ram 4GB

[mysqld]
local-infile=0

#skip-innodb
innodb_buffer_pool_size=128M
#innodb_additional_mem_pool_size=4M
innodb_log_buffer_size=2M
innodb_flush_log_at_trx_commit = 1
innodb_thread_concurrency=2
#innodb_log_file_size = 256M
innodb_file_per_table

skip-character-set-client-handshake
skip-name-resolve
max_connections = 200
max_user_connections=100
key_buffer = 256M
myisam_sort_buffer_size = 32M
join_buffer_size = 1M
read_buffer_size = 1M
sort_buffer_size = 2M
read_rnd_buffer_size = 1M

table_cache = 1536
thread_cache = 4
thread_concurrency = 2
thread_cache_size = 256
wait_timeout = 3600
connect_timeout = 10
max_tmp_tables = 256
tmp_table_size = 128M
max_allowed_packet = 16M
max_connect_errors = 10
max_user_connections=100
query_cache_limit = 1M
query_cache_size = 32M
query_cache_type = 1
query_prealloc_size = 16384
query_alloc_block_size = 16384
max_heap_table_size = 128M
#tmpdir=/var/mysqltmp

log_warnings=0

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
open_files_limit = 16384

ครับ ผมก็สงสัยว่า HDD ใกล้ไปแล้วเหมือนกัน จะรีบเปลี่ยนพรุ่งนี้แหละครับผม :154218d4:

แล้วก็จะลองทำตามที่ แนะนำ ดูนะครับ ขอบคุณมากครับ

mytop เปิดดูยังไงหรอครับ

เจอปัญหาเหมือนกันครับ ตอน 00:12 ของทุกวัน ไม่รู้จะแก้ไขยังไงเลยตั้ง Cron Jobs ไว้ตรวจสอบทุกๆ 5 นาที :016:

[U][B]เพิ่มเติม[/B][/U] ย้ายมาเครื่องใหม่ก็มีปัญหา MySQL ค้างเหมือนเดิม นึกว่าฐานข้อมูเสีย ลบเรื่อยๆ จนหายไปประมาณ 20% ยังไม่หายค้าง เลยปล่อยทิ้งไว้ก่อนเลยครับ

rpm -Uvh http://mirrors.thzhost.com/epel/6/x86_64/epel-release-6-8.noarch.rpm
yum -y install smartmontools
smartctl --all /dev/sdX

แล้วดูครับ ว่ามันเป็นที่ disk หรือไม่

แนะนำให้ทำตามพี่ไอซ์ครับ ถ้ามันเป็นแค่เฉพาะเที่ยง ขอดู mytop ตอนช่วงระยะเวลานั้นๆดีกว่า

จะติดตั้ง mytop แล้วมันขึ้นแบบนี้ครับ

เครื่องใช้ DA ด้วยหรือเปล่าครับ

คุณไอซ์ เคยบอกว่า ถ้า เครื่องที่ใช้ DA นั้น จะมีขั้นตอนที่แตกต่างตากเดิม ด้วยนะครับ

พี่แมนเคยลง How to ไว้นะครับ

ลงตามวิธีนี้แล้วครับ ขึ้นแบบนี้

[URL=“0sssss.jpg [718x511px] - ฝากรูป”]

cpan install DBD::mysql

ขึ้นแบบนี้ครับผม