制作便于维护管理的Antrix服务器

针对不少新人,于是有了这篇文章
从Antrix8xx的一个版本开始,Antrix的设计人员对数据库代码进行了修改,以使用户数据与游戏数据的分离成为现实。
我们为什么要将用户数据与游戏数据分开?原因很简单:便于维护。你可以想像在混合的数据库中想要备份或修改是如何地麻烦。分离这两者以后,当OBDB有新版本发布时我们就可以方便地在原数据库基础上进行更新,或者干脆将其作为一个新的数据库导入,而不必在乎用户数据会受到影响。
哪些表属于用户数据?从OBDB提供的一个用于备份用户数据表的批处理中(export_accounts.bat)我们可以知道,用户数据由下列几个数据表组成:
accounts
auctions
bids
characters
charters
corpses
guilds
guild_ranks
instances
ipbans
mailbox
playeritems
playerpets
playerpetspells
playersummonspells
questlog
playercooldownitems
playercooldownsecurity
social
tutorials
首先我们先看看WOW的服务器是怎样的架构:
登录服务器—游戏服务器A—副本服务器
     |–游戏服务器B—副本服务器
     |–游戏服务器C—副本服务器
     |–…………………………..
     |–游戏服务器N—副本服务器
登录服务器:当你启动WOW主程序,它便连接到了登录服务器。身份验证、排队等都在这个服务器中完成。
游戏服务器:就是我们通常所说的各区的服务器,如:六区的血顶、风暴之鳞。
副本服务器:为了减轻游戏服务器的负担,副本有专门的服务器,或许还不止一个。
当然,作为私人的服务器,由于用户不多,一台服务器甚至一台普通的个人电脑就可以了。虽然私人服务器可以独立完成多个服务器的任务,但是为了便于维护以及要提供多个游戏服务器来说,数据库的独立则是必要的。
以下是我推荐的数据库结构:
               |-游戏数据(OBDB2-130)
登录数据(ACCOUNTSDB)–|-用户数据(CHARACTERDB1)
              |-用户数据(CHARACTERDB2)
              |-…………………………….
              |-用户数据(CHARACTERDBn) 下面就详细介绍下设置的方法:(服务端程序不是重点,下面将不会详细介绍)
1.准备服务端程序,自己编译、用别人编译好的都可以。
2.导入数据库:
  首先,到svn://svn.obdb.gromnet.net/下载最新的官方数据库,我这里用的修订号是130。
  导入数据库,修改好OBDB2提供的dbimport.bat后,双击导入游戏数据。导入到OBDB2-130中。
  提取用户数据,用户数据OBDB2没有提供,你可以从你现有的数据库中导出或者干脆准备个空表,这里注意,不要把accounts这张表同用户数据一起导出,而是将它单独到处作为一个数据库。
最终做好的数据库结构如图所示:

]]>

原创文章,作者:键盘游走者,如若转载,请注明出处:http://www.708034.com/2007/12/%e5%88%b6%e4%bd%9c%e4%be%bf%e4%ba%8e%e7%bb%b4%e6%8a%a4%e7%ae%a1%e7%90%86%e7%9a%84antrix%e6%9c%8d%e5%8a%a1%e5%99%a8/

发表评论

邮箱地址不会被公开。 必填项已用*标注