准备工作
在开始配置多个MangOS服务器前,需确保满足以下条件:
1、硬件资源充足:每个服务器实例需独立占用内存、CPU和存储资源。
2、基础环境完备:已安装MySQL数据库、C++运行库及MangOS核心文件。
3、版本一致性:确保所有服务器实例使用相同的MangOS核心版本,避免兼容性问题。
步骤一:复制并修改配置文件
1、将原始MangOS服务器文件夹完整复制一份,重命名为新实例名称(如mangos_2
)。
2、进入新文件夹,修改mangosd.conf
和realmd.conf
文件:
- 修改DataDir
路径,指向独立的游戏数据目录。
- 调整LogsDir
,确保日志文件分实例存储。
mangosd.conf示例 DataDir = "./data_2" LogsDir = "./logs_2"
步骤二:调整端口号避免冲突
每个服务器实例需使用独立端口,否则会导致冲突:
1、在realmd.conf
中修改LoginDatabasePort
(默认3306可改为3307、3308等)。
2、在mangosd.conf
中修改WorldServerPort
(默认8085)和SOAP.Port
(默认7878)。
realmd.conf示例 LoginDatabasePort = 3307 mangosd.conf示例 WorldServerPort = 8086 SOAP.Port = 7879
步骤三:配置独立数据库
1、为每个实例创建独立的MySQL数据库:
CREATE DATABASE mangos_world_2; CREATE DATABASE mangos_char_2; CREATE DATABASE mangos_realm_2;
2、导入初始数据:
使用原始SQL文件初始化新数据库,确保表结构与数据一致。
步骤四:启动与管理多实例
1、为每个实例创建独立的启动脚本(.bat
或.sh
),指定配置文件路径:
./mangosd -c /path/to/mangos_2/mangosd.conf
2、使用进程管理工具(如systemd
或Supervisor
)监控多实例运行状态。
常见问题与优化
端口占用错误:通过netstat -ano
检查端口冲突,及时调整配置。
数据库连接失败:确认MySQL用户权限是否覆盖新数据库。
性能瓶颈:若资源不足,可限制单实例的MaxPlayers
数量或分配更低优先级。
个人观点
多开MangOS服务器的核心在于资源隔离与配置规范化,建议首次部署时先完成单实例调优,再通过脚本批量复制,避免手动操作失误,若需长期运维,可结合Docker容器化部署,进一步提升实例的隔离性与扩展效率。
文章摘自:https://idc.huochengrm.cn/fwq/7710.html
评论