科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道数据库在NT平台下的系统优化策略(1)

数据库在NT平台下的系统优化策略(1)

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

本文基于Oracle对平台的依赖性,以NT平台为例,描述Oracle在NT平台上的一些特点,提供一个Oracle系统优化的思路。

作者:changelive 来源:赛迪网 2007年9月3日

关键字: 优化 ORACLE 数据库

  • 评论
  • 分享微博
  • 分享邮件
 

本文基于Oracle对平台的依赖性,以NT平台为例,描述Oracle在NT平台上的一些特点,提供一个Oracle系统优化的思路。

当前,Oracle作为大型数据库管理系统快速发展,如何更好的发挥其强大的数据管理功能?这成为Oracle系统优化方面一个不可忽视的问题。有专门文章从系统参数等软件内部挖掘其"潜力",本文尝试从Oracle与外部环境的特定关系,即Oracle的平台依赖性着手,主要以NT平台为例,就Oracle的平台依赖性的各个方面进行描述。

1.Oracle在NT平台下仅仅是一个多线程(Multiple Threads)操作系统进程(Process)。

在NT平台下,Oracle的每一个后台"进程"(如LGWR、DBWR等)和专用服务"进程"都是Oracle进程的一个子线程。这种多线程结构(Muli_threaded Architecture)在NT上是非常高效的,因为所有子线程都共享同一主进程的资源。如果你添加一个Oracle实例(Instance),才会有一个新的Oracle进程,这个新的进程同样拥有。在NT平台下,操作系统并不给每个Oracle线程标志诸如LGWR、DBWR之类的名字。如果想查看有关线程信息,可以通过SQL语句来查询数据字典(Data Dictionary)中的相关表(Table)和视图(View)。

例如,查看关于DBWR线程的内部编号信息:

select b.name , p.spid
from v$bgpross b , v$process p
where b.paddr=p.addr 
and name='DBWR'

另外,Oracle的系统性能监测工具也提供了一种查看线程信息的简单方法。

2.空间限制:

在NT平台上,Oracle实例和所有连接用户的地址空间都限制在2GB内,而在Win9x平台上,这个限制则在3GB内。因为对于NT或Win9x , 一个进程的地址空间都限制在4GB内,而对于NT平台来说,还要预留2GB给系统资源,如缓冲区,堆栈等,对Win9x来说,预留的空间为1GB 。NT支持两种主要的文件系统: FAT 和 NTFS。Oracle可以在这两种文件系统下安装,但有两个问题需要考虑到。

首先就是安全性。FAT文件系统不支持文件级安全保护,每个登录到NT服务器上的用户都可以删除FAT文件,而NTFS文件系统支持类似于Unix的文件级安全保护,用户只能存取他拥有存取权利的文件。

第二个就是文件的最大限制。一个FAT文件最大是4GB,而一个NTFS文件从技术上讲最大可达到32GB。Oracle在NT平台下每个数据文件最多能有4百万个数据块(Data Block),如果按每个块8KB大小计算,那么一个数据文件就有32GB,而一个数据库(Database)最多可有1022个数据文件,那么这个数据库最大可达到32TB 。

NT支持“裸”磁盘分区(raw disk partition)。每个裸分区可以不经过系统格式化而分配一个驱动器符,直接用于Oracle存放数据文件、日志文件或控制文件。与Unix平台相似,每个裸分区都直接对应唯一的一个Oracle 数据文件、日志文件或控制文件,两种平台的区别仅在于文件命名习惯不同。

例如,在SQL语句中可以这样引用裸分区: DATAFILE '\\.\f:' SIZE 49M REUSE。

这里的f: 就是对应一个裸分区的盘符。而且习惯上,定义的Oracle文件大小通常都比裸分区的大小要小1MB,来避免写到磁盘的0柱面上。

3.参数:

在NT平台上有一些针对Oracle的注册表参数,这些参数类似于Unix平台上的Shell变量。

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章