首页 | 资讯动态 | linux基础 | 系统管理 | 网络管理 | 编程开发 | linux数据库 | 服务器技术 | linux相关 | linux认证 | 嵌入式 | 下载中心 | 专题 | linux招聘 | HR | 镜像
OKLinux中文技术站
·设为首页
·加入收藏
·联系我们
系统管理: 中文环境 系统管理 桌面应用 内核技术 | Linux基础: 基础入门 安装配置 常用命令 经验技巧 软件应用 | Linux数据库: Mysql Postgre Oracle DB2 Sybase other
网络管理: 网络安全 网络应用 Linux服务器 环境配置 黑客安全 | 编程开发: PHP CC++ Python Perl Shell 嵌入式开发 java jsp | PHP技术: PHP基础 PHP技巧 PHP应用 PHP文摘
搜索中心 Linux招聘 Linux专题 Apache | Linux相关: 硬件相关 Linux解决方案 Linux认证 企业应用 其它Unix | 相关下载: 资料下载 参考手册 开发工具 服务器类 软路由 其它
 技术搜索:
会员中心 注册会员 高级搜索  
  → 当前位置:首页>linux数据库>其他>正文

为Oracle数据库表选择一个合适的归宿

http://www.oklinux.cn  2009-04-01  IT专家网    会员收藏  游客收藏  【 】 
您查看的文章来源于http://www.oklinux.cn

  众所周知,Oracle数据库表都是存储在表空间当中。从理论上来说,表可以放置在任何一个表空间当中。但是在实际工作中,处于性能、安全方面的考虑,数据库工程师往往不会这么随意。他们在建立数据库之前,会先对表空间进行规划,要为Oracle数据库选择一个合适归宿。由于这个没有技术方面的限制,故也没有统一的规则各寻。智者见智,仁者见仁。这更是考验数据库工程师水平的一个问题。

  由于这没有统一的标准,公说公有理,婆说婆有理。为此笔者下面提的几个建议,或许也并不一定是真理。这些只是笔者工作经验的总结,各位读者可以有选择的参考。

  规则一:不要把用户的表放置在System表空间。

  当数据库安装完毕后,数据库据系统会默认创建三个表空间,分别为System、Sysaus、Temp的标空间。前面两个位系统表空间,后面一个为临时表空间。这两个表空间往往系统有特殊的用途。故通常情况下,在系统表空间中应该只存放包含数据字典和Oracle系统对象等等相关的表。等等)的话,将会影响数据库的性能。为此,无论是Oracle官方还是笔者都强烈建议,数据库管理员不要在系统表空间中建立其他的数据表等数据库对象。也就是说,除了系统安装时默认建立的对象之外,Oracle数据库工程师不要往这些系统表空间中放入任何数据库方案对象。默认情况下,数据库在权限方面没有进行这方面的控制,故主要靠用户自觉。为了防止将表建立在系统表空间中,笔者有如下几个建议。

  一是参与数据库开发的用户如果有多个的话,最好给每个用户都设置一个默认的表空间(当然这个表空间不能够是系统表空间)。因为用户在建立数据库表的时候,默认情况下是保存在其设置的默认表空间上。故只要为用户设置默认表空间,则用户往往不会因为疏忽等原因而把数据库表误放入系统表空间了。

  二是可以进行相关的权限控制。如在数据库开发时期,可以限制其他数据库用户往这系统表空间中存放数据库对象的权利。有时会为了防止意外,可以设置一个用户有这个往系统表空间中放东西的权利。如此其他用户需要往System等系统表间中建立数据库表或者其他数据库对象时,则只能够有一个用户来完成。这可以最大限度的限制系统表空间的干净。防止用户表放入到系统表空间,从而提高数据库的运行效率。

  三是在数据库交付使用之前,数据库工程师最好再进行一次检查,看看系统表空间中是否有非系统表的数据表。在交付之前数据库工程师还可以做调整。如果交付后用户已经往系统中存储了数据才发现这个错误的话,那么调整起来工作量将会很大。

  总之一个基本的原则就是系统表空间中不能够存放用户表等数据库对象,否则的话会降低数据库的性能。同时也不要将系统对象移动到其他的非系统表空间上。这个画蛇添足的做法也会降低数据库的性能。

共3页: 上一页 1 [2] [3] 下一页

上一篇:三个细节体现Unix系统安全性   下一篇:据调查:Linux操作系统渐受青睐

收藏于收藏夹】 【评论】 【推荐】 【打印】 【关闭
相关文档
·解决OracleDBConsoleorcl不能启动,报错误码
·Linux下MySQL性能的检查和调优方法
·Linux下打开MySQL慢查询记录的配置方法
·三架马车保障Oracle网络的连通性
·Oracle为Eclispe工具发布11g企业包
·选择合适的Oracle数据库关闭方法
·Linux菜鸟的两天Oracle安装生活
·解决MySQL5数据库连接超时问题
·Linux中MySQL群集配置
·记录:Linux下安装MySQL 5
·Oracle For RedHat Linux 5(企业版)
·Linux下C语言处理MySQL数据库示例程序
·MySQL由于server-id相同造成的同步失败恢复
·MySQL数据库之更新语句精解
·RHEL4下安装32位Oracle 10G
·Oracle ebs 11.5.10 for Linux 安装心得
发表评论
密码: 匿名评论
评论内容:

(不超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规)
 
  最新文档
·解决OracleDBConsoleorcl不能启动,报错
·Linux下MySQL性能的检查和调优方法
·Linux下打开MySQL慢查询记录的配置方法
·三架马车保障Oracle网络的连通性
·Oracle为Eclispe工具发布11g企业包
·选择合适的Oracle数据库关闭方法
·Linux菜鸟的两天Oracle安装生活
·解决MySQL5数据库连接超时问题
·Linux中MySQL群集配置
·记录:Linux下安装MySQL 5
·Oracle For RedHat Linux 5(企业版)
·Linux下C语言处理MySQL数据库示例程序
  阅读排行
·Linux下安装Oracle数据库完整笔记
·Oracle建表过程初学
·MySQL导入导出.sql文件步骤
·Linux平台下启动oracle 11g EM控制台
·Oracle 建立临时表语法及使用技巧
·RHEL5.1 下安装Oracle 10.2.0.1及常见
·Linux平台下配置MySQL主从复制
·Linux操作系统下MySQL的卸载、安装全过
·Mysql JDBC驱动版本与Mysql版本的对应
·关于MySQL事务处理学习
·Linux系统中Oracle数据库的用户权限
·Linux系统下启动MySQL的命令及相关知识
·Linux平台下修正MySQL中文乱码问题
·MySQL服务器上添加一个允许远程访问的
·手工配置Oracle 10G Enterprise Manage
网摘收藏: