web应用服务器到另一台oracle服务器的数据库查询慢

web应用服务器到另一台oracle服务器的数据库查询慢,第1张

跨服务器数据查询,服务器要处理rollback,log之类的 *** 作,还是存储过程,会很慢。
可以这样解决1、把数据、日志、索引放到不同的I/O设备上,增加读取速度,以前可以将Tempdb应放在RAID0上,SQL2000不在支持。数据量(尺寸)越大,提高I/O越重要。
2、纵向、横向分割表,减少表的尺寸(sp_spaceuse)。
3、升级硬件。
4、根据查询条件,建立索引,优化索引、优化访问方式,限制结果集的数据量。注意填充因子要适当(最好是使用默认值0)。索引应该尽量小,使用字节数小的列建索引好(参照索引的创建),不要对有限的几个值的字段建单一索引如性别字段。
5、提高网速。

insert
into
MICS_WorkPlan_RestDays
select

from
OPENROWSET('SQLOLEDB',
'SERVER=192168297;uid=用户名;pwd=密码;Database=数据库','select

from
v_restdays(sql语句,可执行存储过程)')
as
a
此语句可用来将另一服务器中的数据插入到本数据库中的某一表内

opendatasource('sqloledb,'Data Source=服务器地址;UserID=sa;Password=pass@word1 ')数据库名字dbo[表名] 这是跨服务器的调用,如不是不是跨服务器,直接数据库名dbo表名

1、使用ssh-keygen生成密钥实现快速登陆
[python]
view
plain
copy
要跨服务器自动执行脚本,得需要实现免密码自动登陆,然后才能在多个服务器之间跳转,因此我们首先需要生成登陆密钥。
生存登陆密钥需要三个步骤,在本地机器创建密钥,复制公钥要远程主机,将公钥追加到远程主机的authorized_keys
下面是一个 *** 作示例:
oracle@linux1:~>
mkdir
~/ssh
#首先在本地创建ssh目录并赋予权限
oracle@linux1:~>
chmod
700
~/ssh
oracle@linux1:~>
ssh-keygen
-t
rsa
#使用ssh-keygen生成密钥对,也可以使用dsa方式
Generating
public/private
rsa
key
pair
Enter
file
in
which
to
save
the
key
(/users/oracle/ssh/id_rsa):
Enter
passphrase
(empty
for
no
passphrase):
Enter
same
passphrase
again:
Your
identification
has
been
saved
in
/users/oracle/ssh/id_rsa
Your
public
key
has
been
saved
in
/users/oracle/ssh/id_rsapub
The
key
fingerprint
is:
01:c8:48:01:f2:3d:a7:b4:cd:4a:9c:10:2d:ba:ef:4e
oracle@linux1

我猜的,因为我现在没有SQL Server的环境,一般创建表的时候都是: 服务器名数据库名表名,
你试试这样:
假设你在1649上有个数据库叫 cat,要建立的表名叫sales
create table Testcatsales(id int);

确定网速没问题的话,用的又是存储过程,服务器要处理rollback,log之类的 *** 作会变慢,但是不至于慢这么多,你检查一下防火墙和杀毒软件,把他们关了看看会不会变快。能想到的就这么多了。刚刚给你查了下,禁用DNS解析,连接速度会快很多。不妨试一下,如果还慢的话,建议用缓存吧,比如hibernate框架


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10270001.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-07
下一篇 2023-05-07

发表评论

登录后才能评论

评论列表(0条)

保存