斑竹、高手请协助。vbb使用带来的数据库问题,请大家帮忙

斑竹、高手请协助。vbb使用带来的数据库问题,请大家帮忙

斑竹、高手请协助。vbb使用带来的数据库问题,请大家帮忙
Warning: Too many connections in /home/public_html/bbs/admin/db_mysql.php on line 38

论坛逐渐人气以后现在出现这个问题,严重干扰了论坛正常交流。

初步查了一下以后,发现可能是mysql数据库连接数的问题。参照一些网上的说明,简单的添加my.cnf文件把max_connections设置成更高的数字。结果系统很快就崩溃。

请帮忙出点主意

系统是redhat linux 7.3
mysql-3.23.44

双p2 350 256MB内存
只运行了apache和mysql构建的论坛,按理可以支持100以上的用户访问的。      
可能没有说的很明白。
其实就是论坛等php程序造成超过mysql默认设置的连接数,结果不能工作了

按照我的软硬件,应该可以支持更多连接数的。
但是一知半解的修改mysql的max_connections文件造成系统忙,大量的mysqld子进程占用大量的cpu time和内存。

希望了解这种情况是不是mysql默认最大连接数100造成的,和如何正确设置数据库参数。

=谢谢      
这是我在数据库里执行show status;的结果,请帮忙分析一下

+--------------------------+------------+
| Variable_name | Value |
+--------------------------+------------+
| Aborted_clients | 0 |
| Aborted_connects | 10977 |
| Bytes_received | 58738134 |
| Bytes_sent | 1295552983 |
| Com_admin_commands | 0 |
| Com_alter_table | 0 |
| Com_analyze | 0 |
| Com_backup_table | 0 |
| Com_begin | 0 |
| Com_change_db | 50112 |
| Com_change_master | 0 |
| Com_check | 0 |
| Com_commit | 0 |
| Com_create_db | 0 |
| Com_create_function | 0 |
| Com_create_index | 0 |
| Com_create_table | 0 |
| Com_delete | 1269 |
| Com_drop_db | 0 |
| Com_drop_function | 0 |
| Com_drop_index | 0 |
| Com_drop_table | 0 |
| Com_flush | 4 |
| Com_grant | 0 |
| Com_insert | 2664 |
| Com_insert_select | 109 |
| Com_kill | 0 |
| Com_load | 0 |
| Com_load_master_table | 0 |
| Com_lock_tables | 0 |
| Com_optimize | 0 |
| Com_purge | 0 |
| Com_rename_table | 0 |
| Com_repair | 0 |
| Com_replace | 65 |
| Com_replace_select | 19 |
| Com_reset | 0 |
| Com_restore_table | 0 |
| Com_revoke | 0 |
| Com_rollback | 0 |
| Com_select | 311278 |
| Com_set_option | 0 |
| Com_show_binlogs | 0 |
| Com_show_create | 0 |
| Com_show_databases | 4 |
| Com_show_fields | 4 |
| Com_show_grants | 0 |
| Com_show_keys | 0 |
| Com_show_logs | 0 |
| Com_show_master_status | 0 |
| Com_show_open_tables | 0 |
| Com_show_processlist | 0 |
| Com_show_slave_status | 0 |
| Com_show_status | 9514 |
| Com_show_tables | 0 |
| Com_show_variables | 0 |
| Com_slave_start | 0 |
| Com_slave_stop | 0 |
| Com_truncate | 0 |
| Com_unlock_tables | 0 |
| Com_update | 27554 |
| Connections | 17312 |
| Created_tmp_disk_tables | 0 |
| Created_tmp_tables | 8169 |
| Created_tmp_files | 0 |
| Delayed_insert_threads | 0 |
| Delayed_writes | 0 |
| Delayed_errors | 0 |
| Flush_commands | 1 |
| Handler_delete | 2037 |
| Handler_read_first | 13124 |
| Handler_read_key | 2129340 |
| Handler_read_next | 13556224 |
| Handler_read_prev | 32486 |
| Handler_read_rnd | 2236189 |
| Handler_read_rnd_next | 212552527 |
| Handler_update | 24782 |
| Handler_write | 322348 |
| Key_blocks_used | 7793 |
| Key_read_requests | 9877086 |
| Key_reads | 23017 |
| Key_write_requests | 7278 |
| Key_writes | 6453 |
| Max_used_connections | 100 |
| Not_flushed_key_blocks | 0 |
| Not_flushed_delayed_rows | 0 |
| Open_tables | 64 |
| Open_files | 110 |
| Open_streams | 0 |
| Opened_tables | 13435 |
| Questions | 399352 |
| Select_full_join | 0 |
| Select_full_range_join | 0 |
| Select_range | 52653 |
| Select_range_check | 0 |
| Select_scan | 72681 |
| Slave_running | OFF |
| Slave_open_temp_tables | 0 |
| Slow_launch_threads | 33 |
| Slow_queries | 637 |
| Sort_merge_passes | 0 |
| Sort_range | 67237 |
| Sort_rows | 43057988 |
| Sort_scan | 41418 |
| Table_locks_immediate | 402320 |
| Table_locks_waited | 2758 |
| Threads_cached | 0 |
| Threads_created | 17311 |
| Threads_connected | 101 |
| Threads_running | 1 |
| Uptime | 19981 |
+--------------------------+------------+      
SHOW PROCESSLIST;看看
我觉得应该是程序里的问题,建立的连接没有及时释放
修改/etc/my.cnf
[mysqld]
......
set-variable = max_connections=1000
改变max_connections的值。      
谢谢你能帮忙看我的情况,我试过添加一个my.cnf文件
只含一句内容:
[mysqld]
set-variable = max_connections=200


然后启动数据库,参数显示最大连接数200,但是系统资源很快耗尽。不知道是不是需要同时设置max_connections以外的其他参数还是我的硬件只能最大承受100连接了?      
所以我想让你看看,VBB里面建立连接后是怎么释放连接的。      
o,有大量sleep process