多线程操作数据库,系统运行一点的时间后抛出error:24
     错误提示如下:Can't create table 'tmp_tcpcell' (errno: 24)
                   Can't open file: '.\gb\tbl_tmp_flowctrlms.frm' (errno: 24)

解决方案 »

  1.   

    你打开的表是否过多了?检查一下你的MYSQL打开的表状态。mysql> status;
    --------------
    mysql  Ver 14.14 Distrib 5.1.33, for Win32 (ia32)Connection id:          1
    Current database:       csdn
    Current user:           root@localhost
    SSL:                    Not in use
    Using delimiter:        ;
    Server version:         5.1.33-community-log MySQL Community Server (GPL)
    Protocol version:       10
    Connection:             localhost via TCP/IP
    Insert id:              27
    Server characterset:    latin1
    Db     characterset:    latin1
    Client characterset:    gbk
    Conn.  characterset:    gbk
    TCP port:               3306
    Uptime:                 1 hour 58 secThreads: 1  Questions: 35  Slow queries: 0  Opens: 27  Flush tables: 1  Open tab
    les: 0  Queries per second avg: 0.9
    --------------看看你的 Opens: 27  是多少?
    和你的 open_files_limit 对比一下。
    mysql> show variables like 'open_files_limit';
    +------------------+-------+
    | Variable_name    | Value |
    +------------------+-------+
    | open_files_limit | 622   |
    +------------------+-------+
    1 row in set (0.00 sec)mysql>你的线程在使用表结束后应该及时关闭表。