佛山制作网站公司,ps如何做网站导航图,什么店是做网站制作的,郑州大学现代远程教育《网页设计与网站建设》课程考核要求表空间是oracle内部定义的一个概念,是为了统一oracle物理和逻辑 上的结构而专门建立的,从物理上来说,一个表空间是由具体的一个或多个磁盘上数 据文件构成的(至少1对1,可以1对多),从逻辑上来说一个表空间是由具体的一个或 多个用户模式下的表,索引等等里面的数据所构成的. 因此…表空间是oracle内部定义的一个概念,是为了统一oracle物理和逻辑 上的结构而专门建立的,从物理上来说,一个表空间是由具体的一个或多个磁盘上数 据文件构成的(至少1对1,可以1对多),从逻辑上来说一个表空间是由具体的一个或 多个用户模式下的表,索引等等里面的数据所构成的. 因此从用户的角度来看是不应该看到磁盘上物理的数据文件的,其从小到大的视角是 这样的关系: 字段值 -- 记录值 -- 表数据 -- 用户 -- 表空间 -- ORACLE 而从一个ORACLE DBA的视角来看应是这样的关系: 数据文件 -- 表空间 -- ORACLE
综合一下,也就是说在ORACLE中表不可能单独存在,一定隶属于某一个用户,而某一 用户的数据必定存在于某个表空间中. SQL Server数据库与Oracle数据库之间最大的区别要属表空间设计。Oracle数据库开创性地提出了表空间的设计理念这为Oracle数据库的高性能做出了不可磨灭的贡献。可以这么说Oracle中很多优化都是基于表空间的设计理念而实现的。 典型应用一控制用户所占用的表空间配额。 在一些大型的数据库应用中我们需要控制某个用户或者某一组用户其所占用的磁盘空间。这就好像在文件服务器中需要为每个用户设置磁盘配额一样以防止硬盘空间耗竭。所以在数据库中我们也需要限制用户所可以使用的磁盘空间大小。为了达到这个目的我们就可以通过表空间来实现。 我们可以在Oracle数据库中建立不同的表空间为其设置最大的存储容量然后把用户归属于这个表空间。如此的话这个用户的存储容量就受到这个表空间大小的限制。 典型应用二控制数据库所占用的磁盘空间。 有时候在Oracle数据库服务器中可能运行的不止一个服务。除了数据库服务器外可能还有邮件服务器等应用系统服务器。为此就需要先对Oracle数据库的磁盘空间作个规划否则当多个应用程序服务所占用的磁盘空间都无限增加时最后可能导致各个服务都因为硬盘空间的耗竭而停止。所以在同一台服务器上使用多个应用程序服务我们往往需要先给他们进行磁盘空间的规划和分配。各个服务都不能够超过我们分配给他的最大限额或者超过后及时的提醒我们。只有这样才能够避免因为磁盘空间的耗竭而导致各种应用服务的崩溃。 典型应用三灵活放置表空间提高数据库的输入输出性能。 数据库管理员还可以将不同类型的数据放置到不同的表空间中这样可以明显提高数据库输入输出性能有利于数据的备份与恢复等管理工作。因为我们数据库管理员在备份或者恢复数据的时候可以按表空间来备份数据。如在设计一个大型的分销系统后台数据库的时候我们可以按省份建立表空间。与浙江省相关的数据文件放置在浙江省的表空间中北京发生业务记录则记录在北京这个表空间中。如此当浙江省的业务数据出现错误的时候则直接还原浙江省的表空间即可。很明显这样设计当某个表空间中的数据出现错误需要恢复的时候可以避免对其他表空间的影响。 另外还可以对表空间进行独立备份。当数据库容量比较大的时候若一下子对整个数据库进行备份显然会占用比较多的时间。虽然说Oracle数据库支持热备份但是在备份期间会占用比较多的系统资源从而造成数据库性能的下降。为此当数据库容量比较大的时候我们就需要进行设置多个表空间然后规划各个表空间的备份时间从而可以提高整个数据库的备份效率降低备份对于数据库正常运行的影响。 典型应用四大表的排序操作。 我们都知道当表中的记录比较多的时候对他们进行查询速度会比较慢。第一次查询成功后若再对其进行第二次重新排序仍然需要这么多的时间。为此我们在数据库设计的时候针对这种容量比较大的表对象往往把它放在一个独立的表空间以提高数据库的性能。 典型应用五日志文件与数据文件分开放提高数据库安全性。 默认情况下日志文件与数据文件存放在同一表空间。但是这对于数据库安全方面来说不是很好。所以我们在数据库设计的过程中往往喜欢把日志文件特别是重做日志文件放在一个独立的表空间中然后把它存放在另外一块硬盘上。如此的话当存放数据文件的硬盘出现故障时能够马上通过存放在另一个表空间的重做日志文件对数据库进行修复以减少企业因为数据丢失所带来的损失。 当然表空间的优势还不仅仅这些企业对于数据库的性能要求越高或者数据库容量越大则表空间的优势就会越大。 下面我们就具体来看看Oracle数据库中表空间的处理方式看其在性能与安全性方面是否有足够的优势与SQL Server数据库抗衡。 在数据库设计的时候我们建议数据库管理员按如下顺序设置表空间。 第一步建立表空间。 在设计数据库的时候首先需要设计表空间。我们需要考虑是只建立一个表空间呢还是需要建立多个表空间以及各个表空间的存放位置、磁盘限额等等。 到底设计多少个表空间合理没有统一的说法这主要根据企业的实际需求去判断。如企业需要对用户进行磁盘限额控制的则就需要根据用户的数量来设置表空间。当企业的数据容量比较大而其又对数据库的性能有比较高的要求时就需要根据不同类型的数据设置不同的表空间以提高其输入输出性能。 第二步建立用户并制定用户的默认表空间。 在建立用户的时候我们建议数据库管理员要指定用户的默认表空间。因为我们在利用CREATE语句创建数据库对象如数据库表的时候其默认是存储在数据库的当前默认空间。若不指定用户默认表空间的话则用户每次创建数据库对象的时候都要指定表空间显然这并不是很合理。 另外要注意不同的表空间有不同的权限控制。用户对于表空间A具有完全控制权限可能对于表空间B就只有查询权限甚至连连接的权限的都没有。所以合理为用户配置表空间的访问权限也是提高数据库安全性的一个方法。