前言
重要提醒(必看!)
-
操作前必须关闭所有游戏服务:引擎主程序、网关、登录器、Mud2进程,全部关闭,避免数据锁定导致清档失败或数据残留。
-
操作前必须备份数据库:重点备份「mir3」(角色核心库)、「account」(账号库),防止误操作丢失数据,备份后再执行后续步骤。
-
所需工具:MySQL管理工具(N11/Navicat)、MongoDB管理工具(Robomongo/Studio 3T,仅Mongo版引擎需用)、文本编辑器(用于编辑脚本)。
核心清档模式说明
-
保留账号,仅清空角色数据(常用):适合重置角色等级、装备、背包,玩家账号保留,可直接登录重建角色,无需重新注册。
-
彻底删档(账号+角色全清):适合全新开区、彻底重置服务器,所有账号、角色、缓存数据全部归零,相当于全新安装引擎。
方案一:纯手动清档(稳妥无风险,新手首选)
手动模式1:保留账号,仅清空角色数据
步骤1:手动清空MySQL角色数据库(核心步骤)
-
打开N11/Navicat,连接游戏MySQL数据库(默认账号:root,默认密码:123456,若已修改请输入自定义密码)。
-
在左侧数据库列表中,找到「mir3」数据库(角色核心数据库),双击打开。
-
找到以下5个核心数据表,依次右键选择「清空表(Truncate)」,切记不要删除表(删除表会导致引擎无法正常运行):
-
user_index:角色索引表,存储角色基础索引信息
-
user_data:角色核心数据表,存储角色等级、装备、属性等关键信息
-
user_storage:角色背包+仓库数据表,存储背包、仓库内所有物品
-
hero_index:英雄索引表,存储英雄基础索引信息
-
hero_data:英雄数据表,存储英雄等级、装备、属性等信息
-
-
清空mir3备份子库(有则清,无则跳过):找到「mir3_back1、mir3_back2、mir3_back3、mir3_back4、mir3_backp」数据库,打开每个备份库,全选所有表,右键选择「清空表」,避免备份数据残留。
步骤2:手动清除游戏缓存/排行数据
-
打开服务器内的战神引擎服务端目录,找到路径:
mud2.0\Mir200\Envir\Shadata。 -
全选该文件夹内所有「.txt后缀」的文件,彻底删除(这些文件是游戏排行、首爆记录、战力排名、沙城数据等缓存,不删除会导致清档后数据残留)。
步骤3:重启服务,完成清档
手动模式2:彻底删档(账号+角色全清)
步骤1:执行「手动模式1」的所有操作
步骤2:手动清空账号数据库(二选一,按引擎版本选择)
方式A:MongoDB版账号清空(主流战神引擎版本)
-
打开Robomongo/Studio 3T,连接MongoDB数据库(默认无密码,直接连接即可)。
-
在左侧数据库列表中,找到「account」数据库(账号核心库),双击展开。
-
展开「Collections」(集合),右键点击所有集合,选择「删除(Delete)」,删除所有账号相关记录(包括玩家注册账号、登录信息、登录凭证等)。
方式B:MySQL免Mongo版账号清空(小众版本)
-
回到N11/Navicat,找到左侧「account」数据库,双击打开。
-
找到以下4个账号相关数据表,依次右键选择「清空表(Truncate)」:
-
normal:正式玩家账号表,存储已注册的正式账号
-
guest:游客账号表,存储游客登录账号
-
login:登录记录表,存储玩家登录日志
-
ticket:登录凭证表,存储玩家登录验证信息
-
步骤3:再次确认缓存清除
步骤4:重启服务器,完成彻底删档
方案二:一键脚本清档(高效省时间,资深站长首选)
脚本清档准备工作
-
关闭所有游戏服务(引擎、网关、登录器、Mud2进程),备份数据库(同前文提醒)。
-
打开文本编辑器(记事本、Notepad++均可),复制以下脚本内容,保存为「ClearData.bat」(后缀必须为.bat,保存类型选择「所有文件」)。
一键清档脚本内容(可直接复制)
@echo off
title 战神引擎一键删档工具(适配90ym.cn)
color 0A
echo ==============================================
echo 战神引擎一键删档清空工具
echo 请确保已停止引擎、网关、登录器所有服务!
echo 请确保已备份mir3、account数据库!
echo ==============================================
pause
:: 定义数据库信息(请根据服务器实际情况修改以下3行)
set "MySQLBin=D:\phpStudy\MySQL\bin" :: MySQL的bin目录路径
set "MySQLUser=root" :: MySQL登录账号(默认root)
set "MySQLPass=123456" :: MySQL登录密码(默认123456,修改后替换)
set "MySQLDB=mir3" :: 角色数据库(默认mir3,无需修改)
echo.
echo 正在清空MySQL角色核心数据...
"%MySQLBin%\mysql.exe" -u%MySQLUser% -p%MySQLPass% -D%MySQLDB% -e "TRUNCATE TABLE user_index;"
"%MySQLBin%\mysql.exe" -u%MySQLUser% -p%MySQLPass% -D%MySQLDB% -e "TRUNCATE TABLE user_data;"
"%MySQLBin%\mysql.exe" -u%MySQLUser% -p%MySQLPass% -D%MySQLDB% -e "TRUNCATE TABLE user_storage;"
"%MySQLBin%\mysql.exe" -u%MySQLUser% -p%MySQLPass% -D%MySQLDB% -e "TRUNCATE TABLE hero_index;"
"%MySQLBin%\mysql.exe" -u%MySQLUser% -p%MySQLPass% -D%MySQLDB% -e "TRUNCATE TABLE hero_data;"
echo MySQL角色数据清空完成!
echo.
echo 正在清空MySQL角色备份库(如有)...
"%MySQLBin%\mysql.exe" -u%MySQLUser% -p%MySQLPass% -Dmir3_back1 -e "TRUNCATE TABLE user_index;" 2>nul
"%MySQLBin%\mysql.exe" -u%MySQLUser% -p%MySQLPass% -Dmir3_back2 -e "TRUNCATE TABLE user_index;" 2>nul
"%MySQLBin%\mysql.exe" -u%MySQLUser% -p%MySQLPass% -Dmir3_back3 -e "TRUNCATE TABLE user_index;" 2>nul
"%MySQLBin%\mysql.exe" -u%MySQLUser% -p%MySQLPass% -Dmir3_back4 -e "TRUNCATE TABLE user_index;" 2>nul
"%MySQLBin%\mysql.exe" -u%MySQLUser% -p%MySQLPass% -Dmir3_backp -e "TRUNCATE TABLE user_index;" 2>nul
echo 备份库清空完成(无备份库则忽略报错)!
echo.
echo 正在清除游戏缓存文件...
:: 请将以下路径修改为服务器Shadata实际路径
del /F /Q "D:\mud2.0\Mir200\Envir\Shadata\*.txt"
echo 缓存文件清除完成!
echo.
echo ==============================================
echo 角色数据+缓存一键清空完成!
echo 若需彻底删档,请手动清空account数据库!
echo 请重启战神引擎所有服务!
echo ==============================================
pause
脚本使用方法
-
修改脚本参数:打开保存好的「ClearData.bat」,修改3处关键信息(根据服务器实际情况):
-
MySQLBin:MySQL的bin目录路径(例:若MySQL安装在D盘phpStudy中,路径为D:\phpStudy\MySQL\bin)。
-
MySQLPass:MySQL登录密码(若已修改默认密码,替换123456为自定义密码)。
-
Shadata路径:修改del命令后的路径,确保对应服务器内「mud2.0\Mir200\Envir\Shadata」的实际路径。
-
-
双击运行脚本:将修改好的「ClearData.bat」放在服务器任意目录,双击运行,按照提示按回车键继续,等待脚本自动执行完成。
-
补充操作(按需):
-
保留账号:脚本执行完成后,重启服务即可(脚本已完成角色数据+缓存清空)。
-
彻底删档:脚本执行完成后,手动清空account数据库(参考「手动模式2」的步骤2),再重启服务。
-
三、常见问题FAQ(避坑指南)
-
Q:清档后角色还在,没有被清空? A:原因:未关闭服务就清库、漏清hero_data/hero_index表、未清空mir3备份库。解决:关闭所有服务,重新按教程手动清空对应表格和备份库,删除缓存后重启服务。
-
Q:清档后排行、首爆数据还在,显示异常? A:原因:未删除Shadata文件夹内的txt缓存文件,或删除不彻底。解决:重新进入Shadata目录,全选删除所有txt文件,重启服务即可。
-
Q:脚本运行报错,提示“找不到MySQL路径”? A:原因:脚本内MySQLBin路径填写错误。解决:找到服务器内MySQL的bin目录,复制正确路径替换脚本内对应的参数。
-
Q:清档后登录报错,提示“账号不存在”? A:原因:误操作清空了account数据库(仅想保留账号时),或彻底删档后未重建测试账号。解决:保留账号模式下,恢复account数据库备份;彻底删档模式下,重新注册账号即可。
-
Q:误删了数据表(不是清空表),引擎无法运行? A:原因:操作时误选“删除表”,而非“清空表”。解决:用提前备份的数据库恢复,不要手动重建表结构(手动重建易导致表字段缺失,引擎无法识别)。
四、清档流程总结
1. 保留账号清档(手动/脚本通用)
2. 彻底删档(手动/脚本通用)
3. 两种方案对比
-
手动清档:稳妥无风险,适合新手、第一次清档,操作繁琐但不易出错。
-
脚本清档:高效省时间,适合经常清档的资深站长,需正确配置脚本参数。
本站所有内容均来源于网络,仅供学习与参考,请勿商业运营,严禁从事违法、侵权等任何非法活动,否则后果自负
本站内容观点不代表本站立场,并不代表本站赞同其观点和对其真实性负责
我们非常重视版权问题,如有侵权请邮件与我们联系处理。敬请谅解! 邮件:admin@90ym.cn










暂无评论内容