当前位置:天才代写 > tutorial > 数据库教程 > 临时数据库tempdb的大作用

临时数据库tempdb的大作用

2018-05-22 08:00 星期二 所属: 数据库教程 浏览:514

临时数据库tempdb的大作用

很高兴,小编又在此跟大家分享学习内容了。今天,小编要讲的数据库学习内容就是介绍Sybase临时数据库tempdb。大家可熟悉?具体内容如下:

实验环境的要求:你应具有系统管理员的权限,系统中有auths和article表。
步骤:
第一步:调整临时库的位置
tempdb数据库系统缺省放在master设备上,将临时数据库发在分离的设备上是更可取的。
1)初始化一个用来存放临时数据库的设备

diskinit 
name="tempdb_dev",
physname="d:\\Sybase\\example\\tempdb.dat",
vdevno=13,
size=15360

(注意:如果将tempdb数据库放在多个设备上,需初始化多个数据库设备)
2)将临时数据库扩展到该一个设备上
alterdatabasetempdbontempdb_dev=30
3)打开tempdb数据库,从段上删除master设备
sp_dropsegment”default”,tempdb,master
sp_dropsegmentlogsegment,tempdb,master
4)发出如下命令,检查default段中是否不再包含master设备

selectdbid,name,segmapfromsysusages,sysdevices 
wheresysdevices.low<=syusages.size+vstart
andsysdevices.high>;=sysusages.size+vstart-1
anddbid=2
and(status=2orstatus=3)

说明:若将临时数据库放在多个磁盘设备上,可以更好的利用并行查询特性来提高查询性能。
第二步:将临时数据库与高速缓冲进行绑定
由于临时表的创建、使用,临时数据库会频繁地使用数据缓存,所以应为临时数据库创建高速缓存,从而可以使其常驻内存并有助于分散I/O:
1、创建命名高速缓存
sp_cacheconfig“tempdb_cache”,”10m”,”mixed”
2、重新启动server
3、**临时数据库到tempdb_cache高速缓存
sp_bindcache“tempdb_cache”,tempdb
4、若有大的I/O,配置内存池
第三步:优化临时表
大多数临时表的使用是简单的,很少需要优化。但需要对临时表进行复杂的访问则应通过使用多个过程或批处理来把表的创建和索引分开。以下两种技术可以改善临时表的优化slash;
在临时表上创建索引
1)临时表必须存在
2)统计页必须存在(即不能在空表上创建索引)
slash;把对临时表的复杂的使用分散到多个批处理或过程中,以便为优化器提供信息。
下面的这个过程需要进行优化:

createprocbase_proc 
as
select*into#huge_resultfromauths
select*fromarticle,#huge_resultwherearticle.author_code=
#huge_result.author_codeandsex=”0”

使用两个过程可以得到更好的性能
1)

createprocbase_proc 
as
select*
into#huge_result
fromauths
execselect_proc

2)

createprocselect_proc 
as
select*fromarticle,#huge_result
wherearticle.author_code=#huge_result.author_codeandsex=”0”

说明:在同一个存储过程或批处理中,创建并使用一个表时,查询优化器无法决定这个表的大小。
结论:通过本实验我们知道,临时数据库经过优化可以极大的提高系统性能。实际工作中,必须考虑具体应用的情况,需长时间经验的积累。
临时数据库tempdb的大作用

还有更多相关内容可登录课课家官方网查看数据库视频教程,你一定会不枉此行的。

 

    关键字:

天才代写-代写联系方式