This is my current my.cnf I am trying to improve it, as currently there is a chat room which sometimes has quite a few connections and for some reason people are disconnecting. Has anyone got any suggestions? This is the server information: Total processors: 2 Processor #1 Vendor GenuineIntel Name Intel(R) Pentium(R) Dual CPU E2220 @ 2.40GHz Speed 2400.238 MHz Cache 1024 KB Processor #2 Vendor GenuineIntel Name Intel(R) Pentium(R) Dual CPU E2220 @ 2.40GHz Speed 2400.238 MHz Cache 1024 KB [mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock skip-innodb max_connections = 500 key_buffer = 16M myisam_sort_buffer_size = 64M join_buffer_size = 1M read_buffer_size = 1M sort_buffer_size = 2M table_cache = 1024 thread_cache_size = 64 wait_timeout = 1800 connect_timeout = 10 max_allowed_packet = 16M max_connect_errors = 10 query_cache_limit = 1M query_cache_size = 32M query_cache_type = 1 [mysqld_safe] err-log=/var/log/mysqld.log open_files_limit = 8192 [mysqldump] quick max_allowed_packet = 16M [myisamchk] key_buffer = 64M sort_buffer = 64M read_buffer = 16M write_buffer = 16M [mysql.server] user=mysql And this is my mysqltuner.pl result: -------- General Statistics -------------------------------------------------- [--] Skipped version check for MySQLTuner script [OK] Currently running supported MySQL version 5.1.56 [!!] Switch to 64-bit OS - MySQL cannot currently use all of your RAM -------- Storage Engine Statistics ------------------------------------------- [--] Status: -Archive -BDB -Federated +InnoDB -ISAM -NDBCluster [--] Data in MyISAM tables: 54M (Tables: 492) [--] Data in InnoDB tables: 2M (Tables: 30) [--] Data in MEMORY tables: 0B (Tables: 4) [!!] Total fragmented tables: 128 -------- Performance Metrics ------------------------------------------------- [--] Up for: 26m 24s (61K q [38.590 qps], 2K conn, TX: 620M, RX: 11M) [--] Reads / Writes: 72% / 28% [--] Total buffers: 74.0M global + 4.4M per thread (500 max threads) [!!] Allocating > 2GB RAM on 32-bit systems can cause system instability [!!] Maximum possible memory usage: 2.2G (56% of installed RAM) [OK] Slow queries: 0% (0/61K) [OK] Highest usage of available connections: 1% (5/500) [OK] Key buffer size / total MyISAM indexes: 16.0M/34.4M [OK] Key buffer hit rate: 99.2% (428K cached / 3K reads) [OK] Query cache efficiency: 61.5% (24K cached / 40K selects) [OK] Query cache prunes per day: 0 [OK] Sorts requiring temporary tables: 6% (154 temp sorts / 2K sorts) [!!] Joins performed without indexes: 1929 [!!] Temporary tables created on disk: 27% (2K on disk / 7K total) [OK] Thread cache hit rate: 99% (5 created / 2K connections) [OK] Table cache hit rate: 96% (192 open / 199 opened) [OK] Open file limit used: 4% (345/8K) [OK] Table locks acquired immediately: 99% (32K immediate / 32K locks) [OK] InnoDB data size / buffer pool: 2.9M/8.0M -------- Recommendations ----------------------------------------------------- General recommendations: Run OPTIMIZE TABLE to defragment tables for better performance MySQL started within last 24 hours - recommendations may be inaccurate Enable the slow query log to troubleshoot bad queries Adjust your join queries to always utilize indexes When making adjustments, make tmp_table_size/max_heap_table_size equal Reduce your SELECT DISTINCT queries without LIMIT clauses Variables to adjust: join_buffer_size (> 1.0M, or always use indexes with joins) tmp_table_size (> 16M) max_heap_table_size (> 16M)