
服务器多开部署指南(以二区为例)
本文档详细说明如何基于已部署的一区(s1)复制并配置二区(s2)服务,实现多区开服。操作步骤包括复制目录、修改端口、更改数据库配置、导入数据及启动服务。如需开设更多区服,可按提示类推。
1. 复制目录并设置权限
bash
# 复制一区目录为二区
cp -r /root/s1 /root/s2
# 赋予二区目录可执行权限(生产环境建议按需精细化授权)
chmod -R 777 /root/s2
2. 修改端口配置(所有端口号在原基础加1)
2.1 修改 .pid 文件中的数字标识
将以下文件中的数字内容加1(例如原为 1 则改为 2):
/root/s2/GateServer/GateServer.pid
/root/s2/WorldServer/WorldServer.pid
/root/s2/SceneServer/SceneServer.pid
/root/s2/RecordServer/RecordServer.pid
/root/s2/AdminServer/AdminServer.pid
2.2 修改 .cfg 文件中的 bind_address 端口
找到以下配置文件中的 bind_address = IP:端口,将端口部分加1:
/root/s2/BattleScene/SceneServer.cfg
/root/s2/ChallengeServer/ChallengeServer.cfg
/root/s2/CrossServer/CrossServer.cfg
/root/s2/DBProxyServer/DBProxyServer.cfg
/root/s2/DungeonServer/DungeonServer.cfg
/root/s2/MatchServer/MatchServer.cfg
/root/s2/SocialServer/SocialServer.cfg
/root/s2/SortlistServer/SortlistServer.cfg
/root/s2/TCSRecordServer/RecordServer.cfg
/root/s2/TeamCopyServer/TeamCopyServer.cfg
/root/s2/VerifyServer/VerifyServer.cfg
/root/s2/VerifyCenterServer/VerifyCenterServer.cfg
/root/s2/WSceneServer1/SceneServer.cfg
2.3 修改 .cfg 文件中的 port 字段
直接找到 port = 端口 的行,将端口加1:
/root/s2/RelayServer/RelayServer.cfg
/root/s2/TcpConnServer/TcpConnServer.cfg
/root/s2/UdpConnServer/UdpConnServer.cfg
2.4 修改 .xml 文件中的所有端口
将以下文件中的所有 port=”数字” 的值加1:
/root/s2/AdminServer/NetAddress.xml
/root/s2/RelayServer/ServersAddress.xml
2.5 修改 .xml 文件中的 internaladdress 端口
找到 internaladdress=”IP:端口”,将端口加1:
/root/s2/TeamCopyServer/NetAddress.xml
/root/s2/VerifyServer/NetAddress.xml
/root/s2/WSceneServer1/NetAddress.xml
2.6 修改 Game.cfg 全局配置
编辑 /root/s2/Game.cfg,修改以下两项:
neutral_zone_id = 10 → 改为 11(原值加1)
adminserver_address = IP:端口 → 将端口加1
2.7 修改 AdminServer.cfg
编辑 /root/s2/AdminServer/AdminServer.cfg,修改:
zone_id = 10 → 改为 11(原值加1)
3. 修改数据库连接配置
将以下配置文件中的数据库名称从 aldzn_1 改为 aldzn_2:
/root/s2/Database.xml
/root/s2/TCSRecordServer/Database.xml
4. 创建二区数据库并导入数据
使用宝塔面板或命令行创建数据库 aldzn_2,然后导入一区的备份文件:
bash
mysql -u用户名 -p密码 aldzn_2 < /root/sql/aldzn_1.sql
(若使用宝塔,可直接通过面板操作:新建数据库 aldzn_2,导入 /root/sql/aldzn_1.sql)
5. 添加区服配置
进入数据库 demoald,打开配置表(例如 tk_gameconfig),插入二区的配置记录。可使用以下SQL示例(请根据实际字段调整):
sql
INSERT INTO `tk_gameconfig`
(`id`, `name`, `zone_id`, `db_name`, `flag`, `ip`, `port1`, `port2`, `field1`, `field2`, `field3`, `field4`)
VALUES
(2, ‘二区’, ’11’, ‘aldzn_2’, 0, ‘43.139.83.2’, 9038, 7388, ‘1’, ‘1’, ‘4’, ‘0’);
注意:根据原一区配置调整IP和端口,此处端口应已在一区基础上加1。
6. 启动二区服务
bash
cd /root/s2
./run.sh
拓展:开设更多区服(三区、四区……)
如需继续开设新区,请将上述所有步骤中的数字“2”替换为对应的区号(如3、4、5等),并将所有端口在原一区端口基础上加上对应的数字(例如五区则所有端口加5)。数据库名称和配置表记录也同步变更即可。
