MySQL/スワップスペースがいっぱい

MySQL/スワップスペースがいっぱい

私のMySQLバージョン14.12 Distrib 5.0.45サーバーは、8G RAMと8 x Intel(R)Xeon(R)CPU E5410 @ 2.33GHzを備えたMultiflex Intel Bladeで動作します。

私が直面している問題は次のとおりです。

  1. 過去3〜4日間、2Gスワップスペースがいっぱいになったため、サーバーが停止状態になり、毎回サーバーを再起動する必要がありました。

    出力free -m

                 total       used       free     shared    buffers     cached
    Mem:          7971        933       7037          0          0        800
    -/+ buffers/cache:        132       7838
    Swap:         1983        785       1198
    
  2. 2Gのスワップスペースを追加しましたが、問題はまだ存在します。

    /usr/local/mysql/bin/mysql -uroot -p -e "show variables like '%cache%';":

    +------------------------------+----------------------+
    | Variable_name                | Value                |
    | binlog_cache_size            | 32768                | 
    | have_query_cache             | YES                  | 
    | key_cache_age_threshold      | 300                  | 
    | key_cache_block_size         | 1024                 | 
    | key_cache_division_limit     | 100                  | 
    | max_binlog_cache_size        | 18446744073709551615 | 
    | ndb_cache_check_time         | 0                    | 
    | query_cache_limit            | 1048576              | 
    | query_cache_min_res_unit     | 4096                 | 
    | query_cache_size             | 536870912            | 
    | query_cache_type             | ON                   | 
    | query_cache_wlock_invalidate | OFF                  | 
    | table_cache                  | 1024                 | 
    | thread_cache_size            | 16                   | 
    

どんな提案がありますか?

ベストアンサー1

これは素晴らしい記事ですLinuxカーネルがスワップスペースを処理する方法について説明します。 「スワップ可能性」、つまりカーネルが大規模プログラムをスワップ空間にスワップする可能性を減らし、スワップ空間がRAMよりも優れていないようにすることができます。

0から100の間の値を/ proc / sys / vm / swappinessに反映すると、値に応じてカーネルが少なくなるか、またはより多くスワップされます。デフォルトは60です。 40~50程度お勧めします。

あなたは本当に欲しいかもしれません減らすボトルネックが説明する「停止」状態である可能性があるため、スワップスペースの量です。

おすすめ記事