- 中查找“打开仓库慢的解决方法”更多相关内容
- 中查找“打开仓库慢的解决方法”更多相关内容
- ·上一篇文章:奇迹私服复制物品大法
- ·下一篇文章:地图路口坐标设置
打开仓库慢的解决方法
数据库完全优化指南,提速提速再提速
使用下面优化方式,可以大幅提高服务器相应能力,对低配置服务器最显著,对高性能在巨量接入负载时也会有显著性能提升
1:登陆连接用
CREATE PROCEDURE WZ_CONNECT_MEMB
@uid varchar(20),
@server varchar(20),
@uip varchar(20)
AS
Begin
BEGIN TRANSACTION
SET NOCOUNT ON
IF EXISTS ( SELECT memb___id FROM MEMB_STAT WITH (READUNCOMMITTED)
WHERE memb___id = @uid )
Begin
UPDATE MEMB_STAT
SET ip = @uip , connectstat = 1 , servername = @server , ConnectTM = (getdate())
WHERE memb___id = @uid
End
ELSE
Begin
INSERT INTO MEMB_STAT ( memb___id,ip,connectstat,servername) valueS (
@uid,
@uip,
1,
@server
)
End
IF(@@Error <> 0 )
ROLLBACK TRANSACTION
ELSE
COMMIT TRANSACTION
SET NOCOUNT OFF
End
GO
2:注销登陆用
CREATE PROCEDURE WZ_DISCONNECT_MEMB
@uid varchar(20)
AS
Begin
BEGIN TRANSACTION
SET NOCOUNT ON
IF EXISTS ( SELECT memb___id FROM MEMB_STAT WITH (READUNCOMMITTED)
WHERE memb___id = @uid )
Begin
UPDATE MEMB_STAT
SET DisConnectTM = (getdate()), connectstat = 0 WHERE memb___id = @uid
End
ELSE
Begin
INSERT INTO MEMB_STAT ( memb___id,DisConnectTM,connectstat) valueS (
@uid,
(getdate()),
0
)
End
IF(@@Error <> 0 )
ROLLBACK TRANSACTION
ELSE
COMMIT TRANSACTION
SET NOCOUNT OFF
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]
以上代码分别在查询分析器里执行,执行后登陆看看,打开仓库看看,速度如何:)
5:在我们的表上建一些索引
我们的表有web2_Card,WEB_开头的都是我们新建的!你建一些索引就行了
注意
下列命令是如果系统中存在则删除已存在的索引
WITH
DROP_EXISTING
ON [PRIMARY]
如果没有,删除自然出错并返回
: 消息 7999,级别 16,状态 9,行 1
未能找到任何名为 warehouse_accountid_index 的索引(属于表 warehouse)
删除建立索引命令内的
WITH
DROP_EXISTING
ON [PRIMARY]
这部分再运行就可以了。
另外建立索引可以加快数据库查询速度,应该可以在解决由于延迟导致的复制问题
使用下面优化方式,可以大幅提高服务器相应能力,对低配置服务器最显著,对高性能在巨量接入负载时也会有显著性能提升
1:登陆连接用
CREATE PROCEDURE WZ_CONNECT_MEMB
@uid varchar(20),
@server varchar(20),
@uip varchar(20)
AS
Begin
BEGIN TRANSACTION
SET NOCOUNT ON
IF EXISTS ( SELECT memb___id FROM MEMB_STAT WITH (READUNCOMMITTED)
WHERE memb___id = @uid )
Begin
UPDATE MEMB_STAT
SET ip = @uip , connectstat = 1 , servername = @server , ConnectTM = (getdate())
WHERE memb___id = @uid
End
ELSE
Begin
INSERT INTO MEMB_STAT ( memb___id,ip,connectstat,servername) valueS (
@uid,
@uip,
1,
@server
)
End
IF(@@Error <> 0 )
ROLLBACK TRANSACTION
ELSE
COMMIT TRANSACTION
SET NOCOUNT OFF
End
GO
2:注销登陆用
CREATE PROCEDURE WZ_DISCONNECT_MEMB
@uid varchar(20)
AS
Begin
BEGIN TRANSACTION
SET NOCOUNT ON
IF EXISTS ( SELECT memb___id FROM MEMB_STAT WITH (READUNCOMMITTED)
WHERE memb___id = @uid )
Begin
UPDATE MEMB_STAT
SET DisConnectTM = (getdate()), connectstat = 0 WHERE memb___id = @uid
End
ELSE
Begin
INSERT INTO MEMB_STAT ( memb___id,DisConnectTM,connectstat) valueS (
@uid,
(getdate()),
0
)
End
IF(@@Error <> 0 )
ROLLBACK TRANSACTION
ELSE
COMMIT TRANSACTION
SET NOCOUNT OFF
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]
以上代码分别在查询分析器里执行,执行后登陆看看,打开仓库看看,速度如何:)
5:在我们的表上建一些索引
我们的表有web2_Card,WEB_开头的都是我们新建的!你建一些索引就行了
注意
下列命令是如果系统中存在则删除已存在的索引
WITH
DROP_EXISTING
ON [PRIMARY]
如果没有,删除自然出错并返回
: 消息 7999,级别 16,状态 9,行 1
未能找到任何名为 warehouse_accountid_index 的索引(属于表 warehouse)
删除建立索引命令内的
WITH
DROP_EXISTING
ON [PRIMARY]
这部分再运行就可以了。
另外建立索引可以加快数据库查询速度,应该可以在解决由于延迟导致的复制问题
Tags:
作者:佚名评论内容只代表网友观点,与本站立场无关!
评论摘要(共 0 条,得分 0 分,平均 0 分)
查看完整评论