传奇服务端换服务器:帐号与人物信息导入完整指南

来源: 作者: 点击:
一、核心逻辑与前置准备
传奇服务端的帐号与人物信息迁移,本质是数据库文件转移 + 服务端配置适配的过程。需优先完成三项准备工作:
停止旧服务器所有服务进程,避免数据写入冲突;
确认新旧服务器使用相同引擎版本(如 Hero、GOM 等),不同版本需提前执行数据库转换;
准备文件传输工具(推荐 FileZilla、SCP)和数据库管理工具(DBC2000、Navicat)。
二、旧服务器数据备份与导出
1. 定位核心数据存储位置
三类关键数据的默认路径需重点关注:
数据类型
存储路径(旧服务器)
账号数据
\MirServer\mud2\Logsrv\IdDB\
角色存档
\MirServer\mud2\DBSrv200\FDB\
行会信息
\MirServer\Mir200\GuildBase\

2. 执行数据导出操作
账号与角色数据:直接复制上述路径下的 .dbs 格式文件,建议用 DBC2000 打开 HeroDB 验证字段完整性,若出现 StdItems.DB 编号不一致,需用 Navicat 执行字段映射;
行会与配置数据:复制 guilds/*.txt 行会成员文件和 Castle/*.txt 沙巴克配置文件,用 VSCode 批量替换文件内的旧服务器 IP 地址,中文行会名需确认编码为 ANSI 格式;
权限数据:备份 \MirServer\Mir200\Envir\AdminList.txt 的 GM 名单文件,确保管理权限同步迁移。
三、新服务器数据导入与配置
1. 部署基础运行环境
安装与旧服务器相同版本的 DBC2000,修改注册表指向新数据路径:
(HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\HeroDB)
"DBQ"="D:\\NewMirServer\\mud2\\DB"

替换 5 处核心配置文件的 IP 地址:
文件路径
修改字段
/Mir200/!Setup.txt
IP = 新服务器 IP
/LoginGate/Config.ini
Server1 = 新服务器 IP
/RunGate/RunGate.ini
ListenAddr = 新服务器 IP

2. 导入数据文件
通过 Beyond Compare 工具增量同步数据,将旧服务器备份的文件覆盖至新服务器对应路径:
# 同步账号数据
/mud2/Logsrv/IdDB/ --> /NewMirServer/mud2/Logsrv/IdDB/
# 同步角色数据
/mud2/DBSrv200/FDB/ --> /NewMirServer/mud2/DBSrv200/FDB/

若出现数据异常,执行数据库修复命令:
CHECKDB('HeroDB', REPAIR_ALLOW_DATA_LOSS)

四、迁移后验证与调试
1. 基础功能测试
测试项
预期结果
异常处理方案
账号登录
密码校验通过进入选角界面
检查 IdDB 文件权限
角色属性
等级、装备、地图坐标完整
对比 StdItems.DB 字段
行会功能
成员列表及职位显示正常
重新校验 guilds 文件编码

2. 容灾快照创建
为应对突发问题,打包新服务器服务端创建快照:
tar -zcvf backup_mir.tar.gz /NewMirServer/

异常时可停止服务后恢复快照:
systemctl stop 传奇服务 && rm -rf /NewMirServer/ && tar -zxvf backup_mir.tar.gz

五、高阶场景处理
1. 跨引擎迁移
若需从 Hero 转 GOM 等不同引擎,使用 LegacyDBConverter 工具,关键字段映射如下:
Hero 字段
GOM 对应字段
转换规则
ACCOUNTINDEX
LoginID
直接复制
ITEMTYPE
StdMode
查表转换

2. 云服务器适配
阿里云、腾讯云需开放 7000/7100/7200 端口,若使用 RDS 云数据库,需改写 M2Server 的数据库连接逻辑。
六、实用工具包推荐
工具名称
用途
DBC2000 修复助手
数据库字段校验
Navicat Premium
数据库可视化操作
Beyond Compare
增量文件对比同步
JMeter
多用户并发登录测试