14329


MySQLの同時接続数のチューニングをしようとしており、  
open_files_limitを設定しようとしています。

インターネットで調査していると↓で一番大きな値を取るように書かれていたのですが、

[code]

    open_files_limit
    max_connections * 5
    table_open_cache * 2 + max_connections + 10
    
[/code]

max_connections * 5の「× 5」とはどこのを指すのでしょうか？  
1つはネットワークのファイルディスクリプタで  
2つはMYD、3つはMYIだとすると後2つ思い浮かびません。

ご存知の方がいらっしゃいましたら、教えてください。  
↑の３つも私の想像なのでもし検討違いでしたら指摘して頂けると幸いです。  
よろしくお願いします。


CC BY-SA 3.0
2015-08-12T10:52:23.290
14320
2015-08-12T12:00:53.763
7918
question
mysql
MySQLのopen_files_limitについて教えてください。


以下は回答ではなく、断片的な参考資料といったところです。

ソースコード上で `open_files_limit` を設定している場所は以下です。

**mysql-5.6.26/sql/mysqld.cc: adjust_open_files_limit() function**

[code]

    void adjust_open_files_limit(ulong *requested_open_files)
    {
                       :
    
      /* MyISAM requires two file handles per table. */
      limit_1= 10 + max_connections + table_cache_size * 2;
    
[/code]

>
[code]

>      /*
>         We are trying to allocate no less than max_connections*5 file
>         handles (i.e. we are trying to set the limit so that they will
>         be available).
>       */
>       limit_2= max_connections * 5;
>  
[/code]

[code]

      /* Try to allocate no less than 5000 by default. */
      limit_3= open_files_limit ? open_files_limit : 5000;
    
      request_open_files= max<ulong>(max<ulong>(limit_1, limit_2), limit_3);
    
      /* Notice: my_set_max_open_files() may return more than requested. */
      effective_open_files= my_set_max_open_files(request_open_files);
    
[/code]

5倍にしている部分については特に説明もない状態です。恣意的なものなのか、それとも確たるものがあって決められた値なのかは不明ですが、とりあえずご参考までにどうぞ。


CC BY-SA 3.0
2015-08-12T12:00:53.763
14329
2015-08-12T12:00:53.763
14320
answer