Apache / MySQL सर्वर ब्लॉक


1

मैं Ubuntu 12.04 चलाने वाले सर्वर का प्रबंधन करता हूं।

पिछले कुछ हफ्तों में, सर्वर ने दुर्व्यवहार करना शुरू कर दिया है, और मैं कुछ भी महत्वपूर्ण नहीं सोच सकता जो बदल गया है।

यह पैटर्न है: सर्वर MySQL त्रुटियों की रिपोर्ट करना शुरू करता है। वे निम्नलिखित में से एक या अधिक हो सकते हैं:

  • ADODB त्रुटि: 'प्रारंभिक संचार पैकेट की प्रतीक्षा में' MySQL सर्वर से कनेक्शन खो गया, सिस्टम त्रुटि: 95
  • mysqli :: mysqli (): (HY000 / 2013): MySQL सर्वर से 'ऑथेंटिकेशन इंफॉर्मेशन भेजना', सिस्टम की त्रुटि: 32
  • बहुत सारे कनेक्शन

यह आमतौर पर (लेकिन हमेशा नहीं) रात में होता है, और अंततः सर्वर पूरी तरह से दुर्गम हो जाता है और मेरा एकमात्र विकल्प इसे बेरहमी से पुनरारंभ करना है।

मैंने अब एक क्रॉन जॉब जोड़ा है जो हर 15 मिनट में "ps -elf" चलाता है यह दिखाने के लिए कि क्या चल रहा है, और यह वही है जो समस्याओं के शुरू होने पर दिखाता है:

F S UID        PID  PPID  C PRI  NI ADDR SZ WCHAN  STIME TTY          TIME CMD
4 S root         1     0  0  80   0 -  6051 poll_s Nov05 ?        00:00:00 /sbin/init
1 S root         2     0  0  80   0 -     0 kthrea Nov05 ?        00:00:00 [kthreadd]
1 S root         3     2  0  80   0 -     0 run_ks Nov05 ?        00:00:03 [ksoftirqd/0]
1 S root         4     2  0  80   0 -     0 worker Nov05 ?        00:00:03 [kworker/0:0]
1 S root         6     2  0 -40   - -     0 cpu_st Nov05 ?        00:00:00 [migration/0]
5 S root         7     2  0 -40   - -     0 watchd Nov05 ?        00:00:01 [watchdog/0]
1 S root         8     2  0 -40   - -     0 cpu_st Nov05 ?        00:00:00 [migration/1]
1 S root        10     2  0  80   0 -     0 run_ks Nov05 ?        00:00:04 [ksoftirqd/1]
1 S root        11     2  0  80   0 -     0 worker Nov05 ?        00:00:05 [kworker/0:1]
5 S root        12     2  0 -40   - -     0 watchd Nov05 ?        00:00:01 [watchdog/1]
1 S root        13     2  0  60 -20 -     0 rescue Nov05 ?        00:00:00 [cpuset]
1 S root        14     2  0  60 -20 -     0 rescue Nov05 ?        00:00:00 [khelper]
5 S root        15     2  0  80   0 -     0 devtmp Nov05 ?        00:00:00 [kdevtmpfs]
1 S root        16     2  0  60 -20 -     0 rescue Nov05 ?        00:00:00 [netns]
1 S root        17     2  0  80   0 -     0 worker Nov05 ?        00:00:00 [kworker/u:1]
1 S root        18     2  0  80   0 -     0 bdi_sy Nov05 ?        00:00:00 [sync_supers]
1 S root        19     2  0  80   0 -     0 bdi_fo Nov05 ?        00:00:00 [bdi-default]
1 S root        20     2  0  60 -20 -     0 rescue Nov05 ?        00:00:00 [kintegrityd]
1 S root        21     2  0  60 -20 -     0 rescue Nov05 ?        00:00:00 [kblockd]
1 S root        22     2  0  60 -20 -     0 rescue Nov05 ?        00:00:00 [ata_sff]
1 S root        23     2  0  80   0 -     0 hub_th Nov05 ?        00:00:00 [khubd]
1 S root        24     2  0  60 -20 -     0 rescue Nov05 ?        00:00:00 [md]
1 S root        25     2  0  80   0 -     0 worker Nov05 ?        00:00:02 [kworker/1:1]
1 S root        26     2  0  80   0 -     0 watchd Nov05 ?        00:00:00 [khungtaskd]
1 D root        27     2  0  80   0 -     0 get_re Nov05 ?        00:00:08 [kswapd0]
1 S root        28     2  0  85   5 -     0 ksm_sc Nov05 ?        00:00:00 [ksmd]
1 S root        29     2  0  99  19 -     0 khugep Nov05 ?        00:00:00 [khugepaged]
1 S root        30     2  0  80   0 -     0 fsnoti Nov05 ?        00:00:00 [fsnotify_mark]
1 S root        31     2  0  80   0 -     0 ecrypt Nov05 ?        00:00:00 [ecryptfs-kthrea]
1 S root        32     2  0  60 -20 -     0 rescue Nov05 ?        00:00:00 [crypto]
1 S root        40     2  0  60 -20 -     0 rescue Nov05 ?        00:00:00 [kthrotld]
1 S root        41     2  0  80   0 -     0 scsi_e Nov05 ?        00:00:00 [scsi_eh_0]
1 S root        42     2  0  80   0 -     0 scsi_e Nov05 ?        00:00:00 [scsi_eh_1]
1 S root        44     2  0  80   0 -     0 worker Nov05 ?        00:00:00 [kworker/u:3]
1 S root        63     2  0  60 -20 -     0 rescue Nov05 ?        00:00:00 [devfreq_wq]
1 S root       216     2  0  80   0 -     0 worker Nov05 ?        00:00:07 [kworker/1:2]
1 S root       222     2  0  80   0 -     0 bdi_wr Nov05 ?        00:00:05 [flush-8:0]
1 S root       223     2  0  80   0 -     0 kjourn Nov05 ?        00:00:31 [jbd2/sda1-8]
1 S root       224     2  0  60 -20 -     0 rescue Nov05 ?        00:00:00 [ext4-dio-unwrit]
1 S root       331     1  0  80   0 -  4308 poll_s Nov05 ?        00:00:00 upstart-udev-bridge --daemon
5 S root       346     1  0  80   0 -  5400 ep_pol Nov05 ?        00:00:00 /sbin/udevd --daemon
5 S syslog     355     1  0  80   0 - 62367 poll_s Nov05 ?        00:00:05 rsyslogd -c5
5 S root       440   346  0  80   0 -  5399 ep_pol Nov05 ?        00:00:00 /sbin/udevd --daemon
5 S root       441   346  0  80   0 -  5399 ep_pol Nov05 ?        00:00:00 /sbin/udevd --daemon
1 S root       455     2  0  80   0 -     0 balloo Nov05 ?        00:00:00 [vballoon]
1 S root       458     2  0  60 -20 -     0 rescue Nov05 ?        00:00:00 [kpsmoused]
1 S root       529     1  0  80   0 -  3797 poll_s Nov05 ?        00:00:00 upstart-socket-bridge --daemon
4 S root       599     1  0  80   0 - 12508 poll_s Nov05 ?        00:00:00 /usr/sbin/sshd -D
4 S root       632     1  0  80   0 -  5859 inet_c Nov05 ?        00:00:00 /usr/sbin/vsftpd
4 S root       653     1  0  80   0 -  3993 n_tty_ Nov05 tty4     00:00:00 /sbin/getty -8 38400 tty4
4 S root       656     1  0  80   0 -  3993 n_tty_ Nov05 tty5     00:00:00 /sbin/getty -8 38400 tty5
4 S root       663     1  0  80   0 -  3993 n_tty_ Nov05 tty2     00:00:00 /sbin/getty -8 38400 tty2
4 S root       664     1  0  80   0 -  3993 n_tty_ Nov05 tty3     00:00:00 /sbin/getty -8 38400 tty3
4 S root       669     1  0  80   0 -  3993 n_tty_ Nov05 tty6     00:00:00 /sbin/getty -8 38400 tty6
1 S root       672     1  0  80   0 -  1082 poll_s Nov05 ?        00:00:00 acpid -c /etc/acpi/events -s /var/run/acpid.socket
5 S root       675     1  0  80   0 -  4778 hrtime Nov05 ?        00:00:02 cron
1 S daemon     676     1  0  80   0 -  4227 hrtime Nov05 ?        00:00:00 atd
4 S root       823     1  0  80   0 -  6277 ep_pol Nov05 ?        00:00:02 /usr/lib/postfix/master
4 S postfix    830   823  0  80   0 -  6834 ep_pol Nov05 ?        00:00:00 qmgr -l -t fifo -u
1 S root       875     1  0  80   0 - 83556 poll_s Nov05 ?        00:00:16 /usr/sbin/apache2 -k start
4 S root      1028     1  0  80   0 -  3993 n_tty_ Nov05 tty1     00:00:00 /sbin/getty -8 38400 tty1
5 D www-data  9931   875  0  80   0 - 97396 get_re Nov07 ?        00:00:13 /usr/sbin/apache2 -k start
5 S www-data 10104   875  0  80   0 - 97049 unix_s Nov07 ?        00:00:07 /usr/sbin/apache2 -k start
5 S www-data 10121   875  0  80   0 - 95995 unix_s 00:01 ?        00:00:07 /usr/sbin/apache2 -k start
5 S www-data 10197   875  0  80   0 - 94013 unix_s 00:26 ?        00:00:07 /usr/sbin/apache2 -k start
5 D www-data 10198   875  0  80   0 - 95983 get_re 00:29 ?        00:00:06 /usr/sbin/apache2 -k start
5 D www-data 10199   875  0  80   0 - 97456 get_re 00:29 ?        00:00:07 /usr/sbin/apache2 -k start
5 S www-data 10288   875  0  80   0 - 97365 unix_s 00:59 ?        00:00:05 /usr/sbin/apache2 -k start
5 S www-data 10539   875  0  80   0 - 98309 unix_s 02:26 ?        00:00:03 /usr/sbin/apache2 -k start
5 S www-data 10549   875  0  80   0 - 94254 unix_s 02:32 ?        00:00:03 /usr/sbin/apache2 -k start
5 S www-data 10583   875  0  80   0 - 95278 unix_s 02:42 ?        00:00:02 /usr/sbin/apache2 -k start
4 S postfix  10641   823  0  80   0 -  6794 ep_pol 03:03 ?        00:00:00 pickup -l -t fifo -u -c
5 D www-data 10705   875  0  80   0 - 93192 get_re 03:21 ?        00:00:01 /usr/sbin/apache2 -k start
5 D www-data 10706   875  0  80   0 - 96563 get_re 03:21 ?        00:00:01 /usr/sbin/apache2 -k start
5 S www-data 10707   875  0  80   0 - 93150 unix_s 03:21 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10708   875  0  80   0 - 95042 get_re 03:21 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10709   875  0  80   0 - 96666 get_re 03:21 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10710   875  0  80   0 - 94554 unix_s 03:21 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10711   875  0  80   0 - 96538 get_re 03:21 ?        00:00:01 /usr/sbin/apache2 -k start
5 D www-data 10713   875  0  80   0 - 92354 get_re 03:21 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10714   875  0  80   0 - 89009 unix_s 03:21 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10715   875  0  80   0 - 93274 unix_s 03:21 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10716   875  0  80   0 - 89289 unix_s 03:21 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10717   875  0  80   0 - 94794 get_re 03:21 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10718   875  0  80   0 - 92354 unix_s 03:21 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10719   875  0  80   0 - 92354 get_re 03:21 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10720   875  0  80   0 - 89168 unix_s 03:21 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10723   875  0  80   0 - 89168 unix_s 03:21 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10724   875  0  80   0 - 88943 unix_s 03:21 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10725   875  0  80   0 - 89168 unix_s 03:21 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10726   875  0  80   0 - 89479 get_re 03:21 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10727   875  0  80   0 - 92354 unix_s 03:21 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10728   875  0  80   0 - 89168 unix_s 03:21 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10729   875  0  80   0 - 88943 unix_s 03:21 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10732   875  0  80   0 - 89077 unix_s 03:21 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10733   875  0  80   0 - 88943 unix_s 03:21 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10735   875  0  80   0 - 89485 get_re 03:21 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10736   875  0  80   0 - 88943 unix_s 03:21 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10737   875  0  80   0 - 89481 get_re 03:21 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10738   875  0  80   0 - 88879 get_re 03:21 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10739   875  0  80   0 - 89289 unix_s 03:21 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10740   875  0  80   0 - 88943 unix_s 03:21 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10741   875  0  80   0 - 89099 get_re 03:21 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10743   875  0  80   0 - 89009 unix_s 03:21 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10744   875  0  80   0 - 89009 unix_s 03:21 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10745   875  0  80   0 - 89481 get_re 03:21 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10746   875  0  80   0 - 89168 unix_s 03:21 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10747   875  0  80   0 - 89009 unix_s 03:21 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10748   875  0  80   0 - 88943 unix_s 03:21 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10749   875  0  80   0 - 88943 unix_s 03:21 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10750   875  0  80   0 - 88943 unix_s 03:21 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10751   875  0  80   0 - 89481 get_re 03:21 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10752   875  0  80   0 - 89481 get_re 03:21 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10753   875  0  80   0 - 92890 get_re 03:21 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10754   875  0  80   0 - 89485 get_re 03:21 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10755   875  0  80   0 - 88943 unix_s 03:21 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10756   875  0  80   0 - 88943 unix_s 03:21 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10757   875  0  80   0 - 89035 unix_s 03:21 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10758   875  0  80   0 - 88943 unix_s 03:21 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10759   875  0  80   0 - 88943 unix_s 03:21 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10760   875  0  80   0 - 89481 get_re 03:21 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10761   875  0  80   0 - 89289 unix_s 03:21 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10762   875  0  80   0 - 89168 unix_s 03:21 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10763   875  0  80   0 - 88943 unix_s 03:21 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10764   875  0  80   0 - 88943 unix_s 03:21 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10765   875  0  80   0 - 88893 get_re 03:21 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10766   875  0  80   0 - 89095 get_re 03:22 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10767   875  0  80   0 - 88943 unix_s 03:22 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10768   875  0  80   0 - 88943 unix_s 03:22 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10769   875  0  80   0 - 89168 get_re 03:22 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10770   875  0  80   0 - 89168 unix_s 03:22 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10771   875  0  80   0 - 88879 get_re 03:22 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10772   875  0  80   0 - 88943 unix_s 03:22 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10773   875  0  80   0 - 88943 unix_s 03:22 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10774   875  0  80   0 - 88045 get_re 03:22 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10775   875  0  80   0 - 88943 unix_s 03:22 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10776   875  0  80   0 - 88943 unix_s 03:22 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10777   875  0  80   0 - 88943 unix_s 03:22 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10779   875  0  80   0 - 88943 unix_s 03:22 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10780   875  0  80   0 - 89168 unix_s 03:22 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10781   875  0  80   0 - 88943 unix_s 03:22 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10782   875  0  80   0 - 88943 unix_s 03:22 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10786   875  0  80   0 - 89035 unix_s 03:22 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10787   875  0  80   0 - 89168 unix_s 03:22 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10788   875  0  80   0 - 88943 unix_s 03:22 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10789   875  0  80   0 - 88943 unix_s 03:22 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10790   875  0  80   0 - 89485 get_re 03:22 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10791   875  0  80   0 - 88943 unix_s 03:22 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10792   875  0  80   0 - 88943 unix_s 03:22 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10799   875  0  80   0 - 88943 unix_s 03:22 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10800   875  0  80   0 - 88943 unix_s 03:22 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10806   875  0  80   0 - 89009 unix_s 03:22 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10807   875  0  80   0 - 89035 unix_s 03:22 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10809   875  0  80   0 - 88943 unix_s 03:22 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10810   875  0  80   0 - 89009 unix_s 03:22 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10811   875  0  80   0 - 88943 unix_s 03:22 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10812   875  0  80   0 - 86561 get_re 03:22 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10813   875  0  80   0 - 87478 get_re 03:22 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10814   875  0  80   0 - 89009 unix_s 03:22 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10815   875  0  80   0 - 89009 unix_s 03:22 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10816   875  0  80   0 - 88943 unix_s 03:22 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10817   875  0  80   0 - 89009 unix_s 03:22 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10818   875  0  80   0 - 88959 get_re 03:22 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10819   875  0  80   0 - 89009 unix_s 03:22 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10820   875  0  80   0 - 89009 unix_s 03:22 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10821   875  0  80   0 - 89009 unix_s 03:22 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10823   875  0  80   0 - 89009 unix_s 03:22 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10824   875  0  80   0 - 89009 unix_s 03:23 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10825   875  0  80   0 - 88567 get_re 03:23 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10831   875  0  80   0 - 89009 unix_s 03:23 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10832   875  0  80   0 - 89009 unix_s 03:23 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10833   875  0  80   0 - 88045 get_re 03:23 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10837   875  0  80   0 - 89009 unix_s 03:23 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10838   875  0  80   0 - 89009 unix_s 03:23 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10839   875  0  80   0 - 88630 get_re 03:23 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10840   875  0  80   0 - 89009 unix_s 03:23 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10841   875  0  80   0 - 87024 get_re 03:24 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10842   875  0  80   0 - 88112 get_re 03:24 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10843   875  0  80   0 - 86190 get_re 03:24 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10844   875  0  80   0 - 89009 unix_s 03:24 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10845   875  0  80   0 - 87925 get_re 03:24 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10846   875  0  80   0 - 88895 get_re 03:24 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10847   875  0  80   0 - 88381 get_re 03:24 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10849   875  0  80   0 - 88047 get_re 03:24 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10851   875  0  80   0 - 87154 get_re 03:24 ?        00:00:00 /usr/sbin/apache2 -k start
5 S www-data 10852   875  0  80   0 - 89009 unix_s 03:24 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10853   875  0  80   0 - 88448 get_re 03:24 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10854   875  0  80   0 - 87480 get_re 03:24 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10855   875  0  80   0 - 87797 get_re 03:24 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10856   875  0  80   0 - 88895 get_re 03:24 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10857   875  0  80   0 - 86494 get_re 03:24 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10867   875  0  80   0 - 88112 get_re 03:24 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10868   875  0  80   0 - 85396 get_re 03:25 ?        00:00:00 /usr/sbin/apache2 -k start
1 S root     10869   675  0  80   0 -  8461 wait   03:25 ?        00:00:00 CRON
1 S root     10870   675  0  80   0 -  8461 wait   03:25 ?        00:00:00 CRON
5 D www-data 10871   875  0  80   0 - 87284 get_re 03:25 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10872   875  0  80   0 - 86451 get_re 03:25 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10874   875  0  80   0 - 85107 get_re 03:25 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10875   875  0  80   0 - 85606 get_re 03:25 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10876   875  0  80   0 - 85993 get_re 03:25 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10877   875  0  80   0 - 84996 get_re 03:25 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10878   875  0  80   0 - 88112 get_re 03:25 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10879   875  0  80   0 - 85588 get_re 03:25 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10880   875  0  80   0 - 85943 get_re 03:25 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10881   875  0  80   0 - 85606 get_re 03:25 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10882   875  0  80   0 - 84537 get_re 03:25 ?        00:00:00 /usr/sbin/apache2 -k start
4 S ct       10883 10869  0  80   0 -  1101 wait   03:25 ?        00:00:00 /bin/sh -c ps -elf
4 S root     10884 10870  0  80   0 -  1101 wait   03:25 ?        00:00:00 /bin/sh -c php /var/www/html/teenfaith/moodle/admin/cli/cron.php > /dev/null
5 D www-data 10888   875  0  80   0 - 84665 get_re 03:25 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10889   875  0  80   0 - 85652 get_re 03:25 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10890   875  0  80   0 - 85107 get_re 03:25 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10891   875  0  80   0 - 84119 get_re 03:25 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10892   875  0  80   0 - 84932 get_re 03:25 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10893   875  0  80   0 - 84804 get_re 03:25 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10894   875  0  80   0 - 85606 get_re 03:25 ?        00:00:00 /usr/sbin/apache2 -k start
5 D www-data 10895   875  0  80   0 - 85878 get_re 03:25 ?        00:00:00 /usr/sbin/apache2 -k start
0 R ct       10897 10883  7  80   0 -  4587 -      03:26 ?        00:00:00 ps -elf
0 R root     10898 10884  0  80   0 -  9142 ?      03:26 ?        00:00:00 php /var/www/html/teenfaith/moodle/admin/cli/cron.php
4 S mysql    11304     1  0  80   0 - 338439 futex_ Nov05 ?       00:11:15 /usr/sbin/mysqld
4 S postfix  24152   823  0  80   0 -  9555 ep_pol Nov06 ?        00:00:00 tlsmgr -l -t unix -u -c

जैसा कि आप देख सकते हैं, 151 अपाचे 2 प्रक्रियाएं चल रही हैं! सामान्य संख्या है। इन प्रक्रियाओं में से 68 में get_re का WCHAN है, 82 में unix_s का एक WCHAN है, और 1 में poll_s का WCHAN है। मुझे नहीं पता कि इसका क्या मतलब है।

पीएस कमांड को इस रात 3:26 पर चलाया गया था, और आप देख सकते हैं कि अपाचे प्रक्रियाओं के विशाल बहुमत को उस समय के कुछ ही मिनटों के भीतर शुरू किया गया था।

बाद में क्या होता है कि सर्वर पर चलने वाले विभिन्न क्रॉन जॉब्स ढेर हो जाते हैं। मुमकिन है क्योंकि वे MySQL का उपयोग नहीं कर सकते। एक घंटे बाद, पीएस कमांड समान पीआईडी ​​के साथ एक ही अपाचे प्रक्रिया को दिखाता है, लेकिन PHP में चल रहे कई क्रोन नौकरियों को सूची में जोड़ा गया है, संभवतः MySQL की प्रतीक्षा कर रहा है।

क्या यह व्यवहार आपमें से किसी के लिए घंटी बजाता है? क्या आपके पास कोई विचार है कि समस्या क्या हो सकती है या मैं आगे कैसे जांच कर सकता हूं?

EDIT 14 नवंबर 2013:

जब समस्याएं शुरू होती हैं, तो चीजें mysql लॉग में लिखी जाती हैं। यहाँ लॉग से पहली पंक्तियाँ हैं:

InnoDB: Warning: a long semaphore wait:
--Thread 140450733872896 has waited at dict0dict.c line 759 for 257.00 seconds the semaphore:
Mutex at 0x7fbd58f8d4c8 created file dict0dict.c line 716, lock var 1
waiters flag 1
InnoDB: Warning: a long semaphore wait:
--Thread 140450751735552 has waited at dict0dict.c line 759 for 308.00 seconds the semaphore:
Mutex at 0x7fbd58f8d4c8 created file dict0dict.c line 716, lock var 1
waiters flag 1
InnoDB: ###### Starts InnoDB Monitor for 30 secs to print diagnostic info:
InnoDB: Pending preads 0, pwrites 0
InnoDB: ###### Diagnostic info printed to the standard error stream
InnoDB: Warning: a long semaphore wait:
--Thread 140450733872896 has waited at dict0dict.c line 759 for 341.00 seconds the semaphore:
Mutex at 0x7fbd58f8d4c8 created file dict0dict.c line 716, lock var 1
waiters flag 1
InnoDB: Warning: a long semaphore wait:
--Thread 140450751735552 has waited at dict0dict.c line 759 for 407.00 seconds the semaphore:
Mutex at 0x7fbd58f8d4c8 created file dict0dict.c line 716, lock var 1
waiters flag 1
InnoDB: ###### Starts InnoDB Monitor for 30 secs to print diagnostic info:
InnoDB: Pending preads 0, pwrites 0

=====================================
131114 20:11:44 INNODB MONITOR OUTPUT
=====================================
Per second averages calculated from the last 3 seconds
-----------------
BACKGROUND THREAD
-----------------
srv_master_thread loops: 45330 1_second, 45308 sleeps, 4112 10_second, 4353 background, 4349 flush
srv_master_thread log flush and writes: 46570
----------
SEMAPHORES
----------
OS WAIT ARRAY INFO: reservation count 8091, signal count 5009
--Thread 140450733872896 has waited at dict0dict.c line 759 for 435.00 seconds the semaphore:
Mutex at 0x7fbd58f8d4c8 created file dict0dict.c line 716, lock var 1
waiters flag 1
--Thread 140450751735552 has waited at dict0dict.c line 759 for 435.00 seconds the semaphore:
Mutex at 0x7fbd58f8d4c8 created file dict0dict.c line 716, lock var 1
waiters flag 1
--Thread 140450762536704 has waited at row0purge.c line 680 for 101.00 seconds the semaphore:
S-lock on RW-latch at 0x7fbd571e9d60 created in file dict0dict.c line 729
a writer (thread id 140450747320064) has reserved it in mode  exclusive
number of readers 0, waiters flag 1, lock_word: 0
Last time read locked in file row0purge.c line 680
Last time write locked in file /build/buildd/mysql-5.5-5.5.31/storage/innobase/row/row0mysql.c line 3153
--Thread 140450741298944 has waited at dict0dict.c line 759 for 229.00 seconds the semaphore:
Mutex at 0x7fbd58f8d4c8 created file dict0dict.c line 716, lock var 1
waiters flag 1
--Thread 140450743305984 has waited at dict0dict.c line 759 for 28.00 seconds the semaphore:
Mutex at 0x7fbd58f8d4c8 created file dict0dict.c line 716, lock var 1
waiters flag 1
--Thread 140450748122880 has waited at dict0dict.c line 759 for 2.00 seconds the semaphore:
Mutex at 0x7fbd58f8d4c8 created file dict0dict.c line 716, lock var 1
waiters flag 1
Mutex spin waits 2044, rounds 95010, OS waits 3074
RW-shared spins 4025, rounds 123141, OS waits 4093
RW-excl spins 298, rounds 27978, OS waits 894
Spin rounds per wait: 46.48 mutex, 30.59 RW-shared, 93.89 RW-excl
------------
TRANSACTIONS
------------
Trx id counter 13B2C77
Purge done for trx's n:o < 13B2C50 undo n:o < 0
History list length 2208
LIST OF TRANSACTIONS FOR EACH SESSION:
---TRANSACTION 0, not started
InnoDB: ###### Diagnostic info printed to the standard error stream
MySQL thread id 23554, OS thread handle 0x7fbd3ce70700, query id 2153806 localhost 3bmoodle_bol checking permissions
DROP TABLE IF EXISTS `bol_bible_refs`
---TRANSACTION 13B2C61, not started
mysql tables in use 1, locked 0
MySQL thread id 23552, OS thread handle 0x7fbd3d2a6700, query id 2153830 localhost 3bmoodle_3bh
SELECT value FROM mdl_config_plugins WHERE plugin = 'qtype_randomsamatch' AND name = 'version'
---TRANSACTION 13B2C07, not started
MySQL thread id 23550, OS thread handle 0x7fbd3d42e700, query id 2153732 localhost 3bmoodle_www
---TRANSACTION 13B2B7D, not started
MySQL thread id 23548, OS thread handle 0x7fbd562d5700, query id 2153450 localhost edbi_new
---TRANSACTION 13B2A8C, not started
MySQL thread id 23525, OS thread handle 0x7fbd500ab700, query id 2153055 localhost 3bmoodle_bh

जवाबों:


1

यहाँ मेरा अनुमान है , लॉग को शाब्दिक रूप से जितना संभव हो सके, व्याख्या करते हुए, जबकि थोड़ा सा एक्सट्रापोलिंग भी:

  • कुछ (शायद हार्डवेयर से संबंधित, हालांकि यह एक सॉफ्टवेयर बग या फाइलसिस्टम भ्रष्टाचार हो सकता है) एक अद्यतन क्वेरी को पूरा करने के लिए MySQL डेमॉन गतिरोध का कारण बन रहा है।
  • आप अपाचे का "प्रीफ़ॉर्क" एमपीएम (मल्टी-प्रोसेसिंग मॉड्यूल) चला रहे हैं ( यह एक अनुमान है )। इसका मतलब है कि आपको प्रत्येक एक साथ HTTP अनुरोध के लिए एक अपाचे प्रक्रिया मिलती है। तो आप या तो एक साथ अनुरोधों का एक टन ( एक ला) प्राप्त कर रहे हैंDDoS), या आपको समय के साथ धीरे-धीरे कुछ अनुरोध मिल रहे हैं, लेकिन वे अनुरोध पूरे नहीं हो रहे हैं, क्योंकि एक अपाचे मॉड्यूल (शायद mod_php, या CGI, या कुछ) में कुछ कोड एक MySQL क्लाइंट है, और MySQL कर रहा है कुछ अपडेट क्वेरी। MySQL में पूर्वोक्त गतिरोध के कारण यह क्वेरी "लटकी हुई" है, इसलिए MySQL कभी भी आपके कोड पर वापस नहीं जाता है, इसलिए आपका कोड HTTP अनुरोध को कभी पूरा नहीं करता है, इसलिए Apache वेब क्लाइंट के साथ कनेक्शन को जीवित रखता है, इसलिए Apache अपस्ट्रीम को स्टैक कर देता है। आप वेब फ्रंट-एंड पर भी अवलोकन करेंगे कि कुछ पृष्ठों को लाने के लिए HTTP अनुरोधों का जवाब देने के लिए सर्वर को बहुत लंबा समय लगता है, और शायद यह कभी भी उत्तर नहीं देता है, और बस समय निकल जाता है।
  • क्रॉन जॉब्स जिसमें MySQL शामिल है, अपाचे प्रक्रियाओं के लिए एक समान कारण के लिए स्टैकिंग कर रहे हैं।

जब मुझे इस तरह की एक अजीब समस्या होती है, तो मैं "प्याज को अंदर बाहर छीलना" पसंद करता हूं, जो इस विचार के लिए मेरा रूपक है कि प्याज की "आंतरिक" परतें निचले स्तर की चीजें हैं, और प्याज की बाहरी परतें हैं उच्च-स्तरीय चीजें जो निम्न-स्तरीय चीजों पर निर्भर करती हैं। तो, अंदर से लेकर बाहर तक, हमारे पास मोटे तौर पर यह (ओवरसिम्प्लीफाइड) स्टैक है, बाहर से:

  • हार्डवेयर
  • ओएस कर्नेल और ड्राइवर, प्रक्रिया प्रबंधन, कार्य अनुसूचक, आदि
  • फाइल सिस्टम
  • C लाइब्रेरी, अन्य निम्न-स्तरीय लाइब्रेरीज़ जो कर्नेल ABI के ऊपर TCP / IP रूटीन को लागू करती हैं
  • डेटाबेस सर्वर
  • उपयोगकर्तास्पेस कॉन्फ़िगरेशन (DNS रिज़ॉल्यूशन /etc/hosts, आदि)
  • आपका वेब सर्वर (Apache)
  • आपका सर्वर-साइड वेब कोड और एचटीएमएल
  • वेब फ्रंट-एंड

तो आइए देखें कि उन परतों में से प्रत्येक पर एक स्पष्ट गतिरोध कैसे आ सकता है:

  • हार्डवेयर: सबसे पहले, एक RAM परीक्षण करें, और कुछ ऐसा चलाएं smartctlऔर जांचें कि क्या SMART को लगता है कि आपके डिस्क ठीक हैं। यदि आप हार्डवेयर विफलता के संकेत देखते हैं, तो वह अपराधी होने की संभावना है।

  • ओएस गिरी: चेक dmesgकिसी के लिए WARNINGया BUGया OOPSलाइनों, जो कर्नेल संस्करण में एक बग का संकेत हो सकता आप उपयोग कर रहे, या शायद अपने ड्राइवरों में से एक। चेतावनियों और बगों से परे, dmesgसामान्य रूप से पढ़ना उपयोगी हो सकता है; किसी भी चीज की तलाश करें, और यदि संदेह हो, तो त्रुटि संदेश, आईपी पते जैसे किसी भी सिस्टम-विशिष्ट विवरण को हटा दें।

  • फाइलसिस्टम: केवल fsckMySQL डेटाबेस में निहित फाइलसिस्टम पर रीड-ओनली रन करें। यदि आप निश्चित नहीं हैं , तो /varशुरू करने के लिए एक अच्छी जगह है - यह पता लगाएं कि कहां /varउपयोग किया जाता है sudo mount, फिर fsckउस वॉल्यूम को, fsckकेवल-पढ़ने के लिए एक चेक को इंगित करने के लिए उपयुक्त कमांड चला रहा है ।

  • सी लाइब्रेरी: कभी-कभी, आप सी-लाइब्रेरी की तरह, यूज़र्सस्पेस के निम्न-स्तरीय मिडलवेयर में बग का सामना कर सकते हैं, हालांकि यह तब तक असामान्य है जब तक कि आपने बहुत सारा सामान संकलित नहीं किया हो। संस्करण बेमेल होने की संभावना अधिक है, लेकिन अगर आप वेनिला उबंटू रिपॉजिटरी से पैकेज चला रहे हैं, तो यह भी अपराधी होने की संभावना नहीं है।

  • डेटाबेस सर्वर: यह पूरी तरह से संभव है कि MySQL के पास अपनी डेटाबेस फ़ाइलों को प्रबंधित करने के लिए एक बग हो, और गलती से दूषित डेटा को आपकी ऑन-डिस्क फ़ाइल पर लिखा हो। यह मामला हो सकता है, भले ही आपकी हार्ड डिस्क हार्डवेयर ठीक हो, और फाइलसिस्टम ठीक चेक करता है। उदाहरण के लिए, एक दौड़ की स्थिति हो सकती है, शायद एक भी जो कि उस समय से तय हो गई है जब उबंटू 12.04 जारी किया गया था (या शायद दौड़ की स्थिति अभी भी मौजूद है, और आप बस अपने काम के बोझ के साथ इसे मारने के लिए वास्तव में बदकिस्मत हैं)। यहाँ पर जाँचने की बात यह है कि यहाँ कुछ सुझाव दिए गए हैं, जिसमें अनिवार्य रूप से SQL फ़ाइलों के लिए अपनी सभी तालिकाएँ लिखना शामिल है, फिर उन्हें फिर से आयात करना। यदि डेटाबेस के लिए डेटा फ़ाइल बहुत बुरी तरह से बंद है, तो आपको डेटाबेस को हटाना होगा और इसे फिर से शुरू करना होगा; उस के साथ सावधान रहें, जैसा कि आप अनुमतियाँ खो सकते हैं आदि। इसके अलावा, यदि आपका डीबी एक दूषित स्थिति में है, तो जो SQL आउटपुट प्राप्त करता है, उसमें आपका सारा डेटा नहीं हो सकता है, इसलिए जब तक आप अपनी मूल DB फाइल का बैकअप नहीं लेते, आप डेटा खो सकते हैं। यह । तो सावधान रहें।

  • यूज़र्सस्पेस कॉन्फ़िगरेशन: मैं इस बारे में नहीं सोच सकता कि इस विशेष परत पर गलत होगा जो "अर्धकुंभ" समस्या का कारण होगा जो आप अपने mysqld लॉग में रिपोर्ट कर रहे हैं। इस परत को सही ढंग से संचालित करने के लिए संभवतः सुरक्षित है।

  • वेब सर्वर: यदि अपाचे गलती पर थे, तो आपको अपनी cronस्क्रिप्ट से कोई भी असामयिक व्यवहार नहीं दिखाई देगा , और एक साधारण /etc/init.d/apache2 restartसमस्या पूरी तरह से ठीक हो जाएगी। हालांकि यह मामला नहीं है, यह है?

  • आपका कोड: आपके द्वारा अब तक पोस्ट किए गए लॉग के आउटपुट को ध्यान में रखते हुए, यह अपराधी होने की संभावना बहुत कम लगती है, जब तक कि आप MySQL को दरकिनार नहीं कर रहे हों और सीधे अपने डेटाबेस में लिख रहे हों, या कच्चे डिस्क पर ब्लॉक-स्तर I / O कर रहे हों। फाइलसिस्टम को दरकिनार करते हुए डिवाइस, या कुछ समान रूप से पागल।

  • वेब फ्रंट-एंड: हाँ, यह समस्या होने की संभावना नहीं है, लॉग से देखते हुए।

यह एक बहुत स्पष्ट और पूरी तरह से चलना है। मैंने स्मार्टक्ट्ल की कोशिश की है, जिसमें कोई समस्या नहीं थी। मुझे लगता है कि आपके द्वारा उल्लिखित डेटाबेस सर्वर मुद्दे मेरे मामले में अपराधी होने की अधिक संभावना है। वैसे भी, सिस्टम द्वारा मुझे अनुमति देते ही मैं आपको इनाम दूंगा। धन्यवाद।
oz1cz
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.