kindquiet素食勤俭敬老孝慈

mysqld_table_isfull

discuz论坛报错,
[ERROR] mysqld: The table ‘_common_visit’ is full。检查硬盘空间还有70%以上空闲。

discuz后台:全局=》性能优化=》服务器优化里的最大在线人数的设置加大。在线保持时间,将此参数改小。

对数据表做检查:

select  count(1) from _common_visit;

+—————+
| count(1) |
+—————+
| 13 |

show table status like '_common_visit'\G

       Name: _common_visit
     Engine: MEMORY
    Version: 10
 Row_format: Fixed

找到原因,原来是内存表,是内存满了。对服务器内存优化,php-fpm由静态改成动态(静态速度更快,消耗更多内存):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
request_slowlog_timeout = 5s
slowlog = /var/log/php-fpm/slowlog-forums.log
listen.allowed_clients = 127.0.0.1
pm = dynamic
pm.max_children = 10
pm.start_servers = 3
pm.min_spare_servers = 2
pm.max_spare_servers = 4
pm.max_requests = 400
listen.backlog = -1
pm.status_path = /status
request_terminate_timeout = 120s
rlimit_files = 131072
rlimit_core = unlimited
catch_workers_output = yes
env[HOSTNAME] = $HOSTNAME
env[TMP] = /tmp
env[TMPDIR] = /tmp
env[TEMP] = /tmp

参考