加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

Devart:Oracle表空间——类型和基本操作概述(2)

(2022-07-28 11:05:43)
标签:

哲想

软件

办公

解决方案

分类: 软件

2022年,甲骨文依然是全球最受欢迎的数据库管理系统,短期内不会失去地位。学习Oracle是数据库专家的必修课,因为在职业生涯的某个阶段,您必须开发和管理Oracle数据库的机会非常高。在本文中,我们将探讨Oracle的一项独特功能——表空间。dbForgeStudio for Oracle 具有一整套方便且用户友好的工具,将在整个旅程中为我们提供帮助。


https://image.135editor.com/files/users/1050/10507216/202207/24511678-D47bBI.jpg


Oracle 中的在线和离线表空间

在线表空间允许用户访问所有可用于读写的数据。特别是SYSTEM 表空间必须始终在线,因为Oracle 需要数据字典才能工作。联机是Oracle 表空间的默认模式。


离线表空间不允许用户访问数据。通常,数据库管理员会使表空间脱机以进行维护和更新操作。此外,Oracle会在出现错误时使表空间脱机。


要将表空间切换到离线模式,请使用以下命令:

https://image.135editor.com/files/users/1050/10507216/202207/24511678-GGUfL4.jpg


注意:您不能将默认的SYSTEM Oracle 表空间脱机。也不可能使UNDO 或临时表空间脱机。


要使脱机表空间重新联机,请使用以下命令:


https://image.135editor.com/files/users/1050/10507216/202207/24511678-9aDbrA.jpg


Oracle 中的只读表空间

只读表空间允许您以只读模式存储文件。Oracle不会更新此类表空间中的文件,用户可以省略此类静态数据库部分的备份和恢复操作。可以从只读表空间中删除一些对象,但不能在那里创建或更改现有对象。


默认情况下,所有新创建的表空间都分配了读/写模式。您可以使用ALTER TABLESPACE 命令将其切换为只读状态:

https://image.135editor.com/files/users/1050/10507216/202207/24511678-e7O5jY.jpg


请注意,OracleDBA 必须具有 ALTERTABLESPACE 或 MANAGETABLESPACE 系统权限。


此外,将 Oracle表空间设为只读时,请注意以下要求:

  • 表空间必须在线才能将其切换到只读模式

  • 表空间不能有任何要应用的撤消信息

  • 如果表空间参与在线备份,则不能将表空间设置为只读

  • 无法将活动的 UNDO 表空间或 SYSTEM 默认表空间设为只读


当您需要更新只读表空间时,有一种方法可以做到。为此,请更改此表空间并使其写入/读取。进行所需的更改后,确保将表空间转回只读模式。


Oracle中只读表空间和在线/离线表空间的区别

只读表空间不同于离线和在线表空间。Oracle中的表空间可以同时离线/在线和只读。当您将其从只读更改为读/写(反之亦然)时,它不会改变在线或离线状态。


但是,如果将表空间切换到只读状态,脱机数据文件将变得可读。此外,您可以在线或离线将单独的数据文件存储在只读表空间中。使用以下命令:


https://image.135editor.com/files/users/1050/10507216/202207/24511678-htDxfs.jpg

您可以将此命令应用于只读表空间,并允许或禁止对特定数据文件的访问。


Oracle数据库中添加和编辑表空间

当表空间变得太满而无法包含更多数据时,这是Oracle中非常常见的问题。因此,经常需要扩大表空间和数据库。你可以通过三种方式做到这一点:


  • 将包含至少一个数据文件的新表空间添加到数据库

  • 将新数据文件添加到表空间

  • 调整表空间中现有数据文件的大小或让它们动态增长


此外,我们将回顾通过标准命令执行这些任务。


创建一个新的 Oracle表空间

我们使用专用的Oracle CREATETABLESPACE 语句来添加表空间。假设我们要创建一个新的,名为TBSnew,大小为50Mb。


使用以下脚本:

https://image.135editor.com/files/users/1050/10507216/202207/24511678-gzFAx6.jpg


在此语句中,我们必须指定三个参数:

  • 表空间名称

  • 对应数据文件的路径(您可以提供完整路径,因为文件是物理文件)

  • 新表空间的大小


要检查我们的表空间是否已成功创建,我们可以使用以下查询:


https://image.135editor.com/files/users/1050/10507216/202207/24511678-kmWJXw.jpg


https://image.135editor.com/files/users/1050/10507216/202207/24511678-MfaQha.jpg


该示例说明了用于创建新表空间的最基本语法。该语句可能非常复杂,有很多选项。


Oracle 会自动将任何新创建的表添加到默认用户的表空间中。但是,您可以更改目标并指定表空间来存储任何特定表,如下所示:


https://image.135editor.com/files/users/1050/10507216/202207/24511678-W4nc3C.jpg


注意:您需要指定表空间的“写入”权限才能将新的Oracle 表放在那里并存储它。


公司名称:北京哲想软件有限公司

北京哲想软件官方网站:cogitosoft.com

北京哲想软件微信公众平台账号:cogitosoftware

北京哲想软件微博:哲想软件

北京哲想软件邮箱:sales@ cogitosoft.com

销售(俞先生)联系方式: 86(010)68421378

微信:18610247936     QQ:368531638

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有