我的编程空间,编程开发者的网络收藏夹
学习永远不晚

数据库中如何实现UNDO TABLESPACE

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

数据库中如何实现UNDO TABLESPACE

这篇文章主要介绍数据库中如何实现UNDO TABLESPACE,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

一、官档

BOOK → SQL Language Reference → 16 SQL Statements: CREATE SYNONYM to CREATE TRIGGER → CREATE TABLESPACE

二、基本语法

  1. CREATE [BIGFILE|SMALLFILE] UNDO TABLESPACE

  2. [数据文件语句]

  3. [范围管理语句]

  4. [一致性保护]

三、数据文件大小

1、数据文件的路径名:DATAFILE datefile_spec1 [,datefile_spec2] ...

2、文件的初始大小:[SIZE INTEGER [K|M|G|T|P|E]]

3、重用:[REUSE]

4、表明是否自动扩展:[AUTOEXTEND]

  a) 不自动扩展:OFF

  b) 自动扩展:ON
    i. 表示数据文件满了以后,扩展的大小:[NEXT INTEGER [K|M|G|T|P|E]]
    ii. 最大扩展到:[MAXSIZE ]
      表示无限的表空间:[UNLIMITED]
      表示数据文件的最大大小:INTEGER [K|M|G|T|P|E]]

四、范围管理语句

说明了表空间如何管理范围。一旦你声明了这个子句,只能通过移植的方式改变这些参数。

1、如果希望表空间本地管理的话,声明local选项,本地管理表空间是通过位图管理的
EXTENT MANAGEMENT LOCAL

  a) 说明表空间自动分配范围,用户不能指定范围的大小。只有9.0以上的版本具有这个功能。
    AUTOALLOCATE

  b) uniform说明表空间的范围的固定大小,缺省是1m。
    UNIFORM [SIZE INTEGER [K|M|G|T|P|E]]

2、如果没有设置extent_management_clause,oracle会给他设置一个默认值。

  a) compatible小于9.0.0:如果初始化参数,那么系统创建字典管理表空间。

  b) compatible大于9.0.0:

    i. 如果没有指定 default storage_clause,oracle创建一个自动分配的本地管理表空间。

    ii. 如果指定 default storage_clause

      如果指定了mininum extent,那么oracle判断mininum extent 、initial、next是否相等,以及pctincrease是否=0.

        如果满足以上的条件,oracle创建一个本地管理表空间,extent size是initial。

        如果不满足以上条件,那么oracle将创建一个自动分配的本地管理表空间。

      如果没有指定mininum extent。initial、那么oracle判断next是否相等,以及pctincrease是否=0。

        如果满足oracle创建一个本地管理表空间并指定uniform。

        否则oracle将创建一个自动分配的本地管理表空间。

注意:本地管理表空间只能存储永久对象。如果你声明了local,将不能声明default storage_clause,mininum extent、temporary.

五、一致性保护

如果你倾向于保证数据一致性,也就是专注于查询,那么你有必要通过ALTER TABLESPACE undotbs1 RETENTION GUARANTEE,来保证一致性,也就是不管你空间够不够用,你都不可以使用inactive状态的区,这样就有可能导致由于没有可用的undo空间而导致数据库hang住,但是这样你可以保证查询语句执行时间在  undo_retention值之内的所有查询的一致性。

RETENTION

  GUARANTEE

  NOGUARANTEE

六、常用语句

  1. CREATE UNDO TABLESPACE UNDOTBS1

  2. DATAFILE '+ARCHDG1' SIZE 30G

  3. EXTENT MANAGEMENT LOCAL;

七、UNDO使用情况

  1. SELECT TABLESPACE_NAME,

  2.        SUM(ACTIVE_MB) ACTIVE_MB,

  3.        SUM(UNEXPIRED_MB) UNEXPIRED_MB,

  4.        SUM(EXPIRED_MB) EXPIRED_MB

  5.   FROM (SELECT TABLESPACE_NAME,

  6.                DECODE(STATUS, 'ACTIVE', SIZE_MB) ACTIVE_MB,

  7.                DECODE(STATUS, 'UNEXPIRED', SIZE_MB) UNEXPIRED_MB,

  8.                DECODE(STATUS, 'EXPIRED', SIZE_MB) EXPIRED_MB

  9.           FROM (SELECT TABLESPACE_NAME,

  10.                        (SUM(BLOCKS) * 8) / 1024 SIZE_MB,

  11.                        STATUS

  12.                   FROM DBA_UNDO_EXTENTS

  13.                  GROUP BY TABLESPACE_NAME, STATUS))

  14.  GROUP BY TABLESPACE_NAME

  15.  ORDER BY TABLESPACE_NAME

以上是“数据库中如何实现UNDO TABLESPACE”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注亿速云行业资讯频道!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

数据库中如何实现UNDO TABLESPACE

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Qt数据库中如何实现通用数据库请求

小编给大家分享一下Qt数据库中如何实现通用数据库请求,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!一、前言数据库请求是在数据库采集的基础上,换成http请求的形式
2023-06-29

Qt数据库应用中如何实现通用数据库采集

小编给大家分享一下Qt数据库应用中如何实现通用数据库采集,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!一、前言数据库采集对应的就是上一篇文章的数据库同步,数据库同
2023-06-29

MySQL数据库锁如何实现

这篇“MySQL数据库锁如何实现”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“MySQL数据库锁如何实现”文章吧。1.什么是
2023-03-23

如何实现mysql数据库编程

小编给大家分享一下如何实现mysql数据库编程,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!1、先创建Database对象。2、创建Conection对象。与数据
2023-06-25

mysql数据库同步如何实现

MySQL数据库同步可以通过多种方式实现,以下是一些常用的方法:使用主从复制:主从复制是MySQL自带的一种数据库同步方法,通过将主数据库的变更日志传输到从数据库,从数据库可以实时同步主数据库的数据。这种方法适用于需要实时同步数据的场景。使
mysql数据库同步如何实现
2024-04-09

java如何实现数据库查询

Java可以使用JDBC(Java Database Connectivity)来实现数据库查询。具体步骤如下:1. 加载数据库驱动:使用`Class.forName()`方法加载数据库驱动,例如加载MySQL驱动可以使用`Class.fo
2023-09-22

sqlserver数据库回滚如何实现

在SQL Server中,可以使用以下方法来实现数据库回滚:使用BEGIN TRANSACTION和ROLLBACK TRANSACTION语句来开始和回滚一个事务。例如:BEGIN TRANSACTION;-- 执行一系列的操作IF @@
sqlserver数据库回滚如何实现
2024-04-09

编程热搜

目录