设为首页 友情链接
在线留言 发表文章
加入收藏 广告联系

刺猬首页

| 专案技术 | 网络技术 | 图形图象 | 网络编程 | 网页设计 | 操作系统 | 服务器 | 技术白皮书 | 在线实验室 | 刺猬论坛 |
小说专版  | 数据库 | 设计赏析 | 存储频道 | 网络安全 | 私服架设 |  Solaris | 网站评估 | PC维护技巧 | 下载中心 | 博 客 |
专   题: | Linux | java | cisco | 防病毒 | 刀片 | SOA | iscsi | ASP.NET | SQL | Oracle |
您现在的位置: IT公社 IT community >> 私服架设 >> 奇迹私服 >> 教程正文 用户登录 新用户注册
专 题 栏 目
最 新 热 门
最 新 推 荐
相 关 文 章
解决了使用中文服务器名…
天堂二服务器新手出生就…
发布天堂Ⅱ美国服务端和…
给你的服务器加上新建角…
不会架设四章服务器的来…
★★天堂2java服务端0.1…
密文服务器端修改成明文…
MIR服务器架设方法大揭迷
传奇3服务器的系统优化
私人服务器GM常用命令以…
  服务器数据库完全优化指南,提速提速再提速           
服务器数据库完全优化指南,提速提速再提速
 

使用下面优化方式,可以大幅提高服务器相应能力,对低配置服务器最显著,对高性能服务器在巨量接入负载时也会有显著性能提升

修改表结构
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]
这部分再运行就可以了。
另外建立索引可以加快服务器数据库查询速度,应该可以在解决由于延迟导致的复制问题

频道声明:本频道的文章除部分特别声明禁止转载的专稿外,可以自由转载.但请务必注明出出处和原始作者 文章版权归本频道与文章作者所有.对于被频道转载文章的个人和网站,我们表示深深的谢意。

原始作者:佚名 录入时间:2007-3-31 3:57:13
信息来源:不详 投稿信箱:itqoo@126.com
教程录入:itqoo    责任编辑:itqoo 
  • 上一个教程:

  • 下一个教程:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
    - 关于我们 - 合作伙伴 - 友情链接 - 广告刊登 - 投稿热线 - 在线留言版权声明联系方式 -
    IT公社版权所有 粤ICP备05127012号
    Copyrigh@2005-2006 itqoo.com.Inc All Rights Reserved  推荐分辨率 1024*768
    联系站长:E-Mail:itqoo@126.com     MSN:urchincc@hotmail.com    QQ:点击这里给我发消息
    特别感谢:亿太网络提供空间支持