魔兽世界私服 家族联盟 经验交流 高手进阶心得 发布家族 软件下载 广告合作 魔兽世界私服技术文章
热门关键字: 经验 战无不胜 战神魔域 奇迹 宝宝 魔域私服 战无不胜魔域 法师

服务器数据库完全优化指南,提速提速再提速

使用下面优化方式,可以大幅提高服务器相应能力,对低配置服务器最显著,对高性能服务器在巨量接入负载时也会有显著性能提升 修改表结构 Muonline的joinlog表,修改如下 servername修改为 char,长度20 ip修改为 char,长度15 然后建立或修改以下存储过程 1:登陆连接用 CREATE PROCEDURE WZ_CONNECT_MEMB @uid varchar(20), @Server varchar(10), @uip varchar(15) AS Begin Declare @dtToday datetime select @dtToday={fn CURDATE()} select @dtToday set nocount on if exists(select * from Uselog where id=@uid) begin update Uselog set State= 上线 where id=@uid INSERT INTO joinlog( ServerName,id,state,ip,sdatetime) values (@Server,@uid,上线,@uip,@dtToday) if(@@error <> 0) begin rollback select-1 end else begin commit select @uid end end else begin INSERT INTO Uselog ( ServerName,id,ip,State) values ( @Server , @uid, @uip,上线) INSERT INTO joinlog( ServerName,id,state,ip,sdatetime) values (@Server,@uid,上线,@uip,@dtToday) end end GO 2:注销登陆用 CREATE PROCEDURE WZ_DISCONNECT_MEMB @uid varchar(10) AS Begin DECLARE @uidl varchar(10) Declare @dtToday datetime Declare @logindate datetime Declare @uip varchar(15) Declare @Server varchar(15) select @dtToday={fn CURDATE()} select @dtToday set nocount on begin transaction update Uselog set State= 下线 where id=@uid INSERT INTO joinlog(id,state,sdatetime) values (@uid,下线,@dtToday) if(@@error <> 0) begin rollback transaction select-1 end else begin commit transaction select @uid end end GO 建立索引 1:仓库索引 CREATE INDEX [warehouse_accountid_index] ON [dbo].[warehouse] ([AccountID]) WITH DROP_EXISTING ON [PRIMARY] 2:角色选择画面索引 CREATE INDEX [accountcharactet_id_index] ON [dbo].[AccountCharacter] ([Id]) WITH DROP_EXISTING ON [PRIMARY] 3:角色索引 CREATE UNIQUE INDEX [pk_character_index_wy] ON [dbo].[Character] ([AccountID] desc , [Name] desc , [Money]) WITH DROP_EXISTING ON [PRIMARY] 4:角色登陆索引 CREATE INDEX [pk_membpwd_index] ON [dbo].[MEMB_INFO] ([memb__pwd]) WITH DROP_EXISTING ON [PRIMARY] 以上代码分别在查询分析器里执行,执行后登陆看看,打开仓库看看,速度如何:) 注意 下列命令是如果系统中存在则删除已存在的索引 WITH DROP_EXISTING ON [PRIMARY] 如果没有,删除自然出错并返回 服务器: 消息 7999,级别 16,状态 9,行 1 未能找到任何名为 warehouse_accountid_index 的索引(属于表 warehouse) 删除建立索引命令内的 WITH DROP_EXISTING ON [PRIMARY] 这部分再运行就可以了。 另外建立索引可以加快服务器数据库查询速度,应该可以在解决由于延迟导致的复制问题  

最新文章 推荐文章
请团结一致,迎接nerf 尊严输出贼们,不要太高兴
盗贼80PVP各种职业打法,及天赋加 魔兽世界·骑士铭
魔兽世界钓鱼大赛心得 “对不起,你是个好人”-巫妖王之怒继
BLZ关于QS的最新蓝帖及蓝帖回复 职业属性点分配值
新开魔兽世界私服 变态魔兽世界私服 网通魔兽世界私服
DDD魔兽世界私服发布网 www.dddmy.com 提供最新开魔兽世界私服发布 版权所有