42 lines
1.2 KiB
Batchfile
42 lines
1.2 KiB
Batchfile
|
|
@echo off
|
||
|
|
chcp 65001 >nul
|
||
|
|
echo ========================================
|
||
|
|
echo 修复卡住的任务
|
||
|
|
echo ========================================
|
||
|
|
echo.
|
||
|
|
echo 此脚本将:
|
||
|
|
echo 1. 查找所有running状态超过10分钟的任务
|
||
|
|
echo 2. 将这些任务标记为失败
|
||
|
|
echo 3. 释放系统资源
|
||
|
|
echo.
|
||
|
|
echo ========================================
|
||
|
|
set /p confirm=确认执行修复?(Y/N):
|
||
|
|
|
||
|
|
if /I "%confirm%" NEQ "Y" (
|
||
|
|
echo 操作已取消
|
||
|
|
goto :end
|
||
|
|
)
|
||
|
|
|
||
|
|
echo.
|
||
|
|
echo 正在连接数据库...
|
||
|
|
echo.
|
||
|
|
|
||
|
|
REM 执行SQL修复
|
||
|
|
mysql -u root -prootx77 fastadmin -e "UPDATE nf_generation_tasks SET status = 'failed', error_msg = '任务处理超时,已自动标记为失败', updated_at = NOW() WHERE status = 'running' AND TIMESTAMPDIFF(MINUTE, updated_at, NOW()) > 10;"
|
||
|
|
|
||
|
|
if %errorlevel% equ 0 (
|
||
|
|
echo ✓ 修复成功
|
||
|
|
echo.
|
||
|
|
echo 查看修复的任务:
|
||
|
|
mysql -u root -prootx77 fastadmin -e "SELECT id, status, error_msg, updated_at FROM nf_generation_tasks WHERE error_msg LIKE '%超时%' ORDER BY id DESC LIMIT 5;"
|
||
|
|
) else (
|
||
|
|
echo ✗ 修复失败
|
||
|
|
echo 请检查MySQL是否正在运行
|
||
|
|
echo 或手动执行SQL: xuniYou/修复卡住的任务.sql
|
||
|
|
)
|
||
|
|
|
||
|
|
:end
|
||
|
|
echo.
|
||
|
|
echo ========================================
|
||
|
|
pause
|