自己开通的有腾讯云的服务器,刚好前段时间已经在虚拟机里把单机版的台服dnf搭建完成,所以一直想搬到自己的云服务器上,可以供大家玩。不过我的云服务器配置太低,1核1G内存。。所以还是自己娱乐吧。自己鼓捣好久,看了不少帖子,整理下有这几个帖子很有用:
抛弃复杂的方法,小白也能架设纯端
【极简操作】VM版本DNF单机+开服架设教学
linux大神在此~带着你的疑问来问吧
频道多开
独立掉落
出五国服务器亮没有频道
只要一句命令,架设纯端,支持单机服务器,3分钟五国 (这个脚本挂在Git上,一键架设纯端,很吊)
自己也走了很多弯路,linux学的好的话这些会很简单,比如说搭建这个游戏需要的一些操作:
我从已经架设好的本机虚拟机中的服务端打包出必要的文件,包含:
1. 数据库文件
可通过 ps -ef|grep mysql 命令 查询数据库所在路径 返回的信息中-datadir=后面就是数据库的所在路径(腾讯云数据库默认的路径不是var/lib,配置完纯端文件变为var/lib下)
cd 该路径 打包数据库文件 打包命令 tar czvf mysql.tar mysql
2. neople 单库(双库dxf)
里边有频道信息啥的,打包命令同样 tar czvf neople.tar neople
然后用winSCP链接服务器,上传文件到相应的位置;
在上传之前,要先下载纯端文件,并配置完成,来配置服务端运行所需要的条件(上传至根目录,install文件设置权限777)
安装命令
cd /
./intall
纯端安装完成,会生成:
neople文件夹(home下,游戏配置文件,这个可以直接删掉,放入从虚拟机打包好的,可使用sed命令批量修改cfg中的ip, 数据库这里 有服务器 没频道就出在neople/game/cfg 下的频道配置cfg文件的ip配置 ; 服务器灰很好解决,host 或者 neople下所有文件夹下cfg文件ip配置, server group count =10时 说明服务器列表一定亮)
mysql数据库文件(默认var/lib下,最好不直接覆盖,容易出错,数据库这里可能会出现很多问题,我重装系统不下10多次。。最后选的cenos5.11系统,3分钟5国不是盖的,另外直接覆盖数据库容易报错,可以通过navicat使用sql文件覆盖。或直接连通虚拟机数据库复制。)
home目录下放单库 解压 tar zxvf neople.tar(把纯端生成的删掉)
数据库在纯端搭建好后,路径为var/lib下 解压 tar zxvf mysql.tar
解压好之后修改d_taiwan数据库下db_connect、dblab_db_connect_130516表中ip为外网ip
./run 运行出现五国即可~
server group count=10时才能确保频道不灰:
我现在的swap大小是8G,设置命令:
/bin/dd if=/dev/zero of=/var/swap.1 bs=1M count=8000
mkswap /var/swap.1
swapon /var/swap.1
sed -i '$a /var/swap.1 swap swap default 0 0' /etc/fstab #加入开机自动挂载
That's all !
如果打开数据库表出现:
尝试service mysqld restart重新启动数据库后,再次打开是否还有问题
还有问题的话,查看mysql日志:
命令:show variables like 'log_%';
百度了下解决方法,如图:
意思就是增加物理内存,想想我1G的内存,好像少的可怜,不设置交换分区根本跑不起来。。可以通过配置交换空间Swap,使一部分硬盘空间虚拟成内存使用,解决内存不足的情况;
按照步骤来:
设置交换分区(swap),交换分区可以通过增加swap物理分区,和添加swap文件方式来实现
添加swap文件,大小4G:
通过dd命令增加swap : ddif=/dev/zero of=/var/swap bs=1024 count=4096000
将swap文件写在/var/swap : mkswap/var/swap
通过free命令查看swap状态
接着vim etc/my.cnf,修改初始化缓存池大小
还有以下情况(可以通过删除mysql下的该文件解决):
进入mysql输入命令show engines;可以查看innodb引擎是否启用