zoukankan      html  css  js  c++  java
  • 3.临时表空间、undo表空间、逻辑备份恢复

    一、临时表空间

    常用场景:用户对大量数据进行排序

      用来存放用户的临时数据,临时数据就是在需要时被覆盖,关闭数据库后自动删除,其中不能存放永久性数据。

    临时表空间

    临时表空间组:一组由临时表空间组成的组,临时表空间和临时表空间不能同名。临时表空间组不能显示地创建和删除,当第一个临时表空间分配给某个临时表空间组是,会自动创建临时表空间组,将临时表空间的最后一个临时表空间删除,会自动删除临时表空间组

    --查看数据库中的表空间
    select * from v$tablespace;
    
    
    --查看临时文件
    select * from v$tempfile;
    select * from dba_temp_files;
    
    --查看临时表空间组的信息
    select * from dba_tablespace_groups;
    
    --查看临时表空间信息
    select * from dba_tablespaces;
    
    --创建临时表空间,不属于组
    create temporary tablespace temp2 tempfile  ‘E:	emp2a.dbf’ size 10m autoextend on;
    --创建临时表空间,属于组 temp_grp
    create temporary tablespace temp3 tempfile  ‘E:	emp3a.dbf’ size 10m autoextend on tablespace group temp_grp;
    
    --将temp2加入 temp_grp组中
    alter tablespace temp2 tablespace group temp_grp;
    --将temp2移出 temp_grp组中
    alter tablespace temp2 tablespace group ‘’;
    
    --给temp2表空间添加一个临时文件
    alter tablespace temp2 add tempfile ‘E:	emp2b.dbf’ size 10m autoextend on;

    二、undo表空间

    undo:撤销

      对于DML语句来说,只要修改了数据块,oracle数据库就会将修改前的数据保留下来,保存在undo segment里,而undo segment 则保存在undo报表空间里

    undo的作用:提供一致性读,回滚事务、实例恢复

    undo表空间:undo segment则保存在undo表空间里,数据库中可以同时存在多个undo表空间,但在一个时间点上,数据库只能使用一个undo表空间,如果将undo_tablespace参数设置为另外一个undo表空间的名字,则称为undo表空间的切换。

    undo相关参数

    1. undo_retention : 该参数以秒为单位,表示当事务提交或 回滚以后,该事物所使用的undo块里的数据需要保留多长时间,当保留的时间超过undo_retention 所指定的时间以后,该undo块才能够被其他事物覆盖。

    2.retention_guarantee:当undo数据文件不能自动扩展,并且undo块不够时用,直接报错,而不是覆盖那些inactive而没有expired的undo块。

    --查看系统中的undo表空间
    select * from dba_tablespaces;
    
    --查看undo表空间的管理方式:手工管理和自动管理
    show parameter undo_management
    
    --增加一个回滚表空间undo tablespace,叫 undotbs2 
    --用来存放回滚段中的数据,记录数据改变的旧值,采用local方式管理存储
    create undo tablespace undotbs2 datafile 'E:undotbs2.dbf'  size 10m autoextend on;
    
    --给回滚表空间undotbs2 增加一个数据文件
    alter tablespace undotbs2 add datafile 'E:undotbs2a.dbf'  size 10m ;
    
    --查看默认的undo表空间
    show parameter undo
    
    --启动retention guarantee 并查看是否启动,再将其取消
    alter tablespace undotbs1 retention guarantee;
    select tablespace_name,retention from dba_tablespaces;
    alter tablespace undotbs1 retention noguarantee;
    
    --查看undo表空间的使用情况  v$undostat --每十分钟更新一次,记录undo表空间使用情况
    desc  v$undostat
    --
    select * from v$undostat

     三、逻辑备份恢复

    备份:数据库中数据的副本

    1.oracle数据库的备份包括两种类型:

    物理备份:对数据库的操作系统物理文件(如数据文件、控制文件和日志文件等)的备份

    逻辑备份:对数据库逻辑组件(如表、视图和存储过程等数据库对象)的备份

    2.导致数据库操作中的故障四种类型:

    ①语句故障:在执行sql语句无效可导致语句故障

    ②用户进程故障:当用户程序出错而无法访问数据库时发生用户进程故障。

            导致用户进程故障的原因是异常断开连接或异常终止进程

    ③实例故障:当oracle 的数据库实例由于硬件或软件问题而无法继续运行时,就会发生实例故障

    ④介质故障:在数据库无法正确读取或写入某个数据库文件时,会发生故障

    3.传统非导入导出

    传统的导入导出程序  用于实施数据库的逻辑备份和恢复  是客户端工具

    导出程序 将数据库中的对象定义的数据 备份到一个操作系统二进制文件中

    导入程序 读取二进制导出文件并将对象和数据载入数据库中

    4.调用导出和导入实用程序三种方法:

    ① 交互提示符:以交互的方式提示用户逐个输入参数的值

    ②命令行参数:在命令行指定执行程序的参数和参数值

    ③参数文件:允许用户 将运行参数和参数值存储在参数文件中,以便重复使用参数

  • 相关阅读:
    bzoj 5028小Z的加油店(D12 序列gcd)(线段树+树状数组)
    蒲公英
    [APIO2012]派遣(可并堆)(D11)
    AT1219 歴史の研究(回滚莫队)
    [USACO05DEC] 布局
    小B的询问
    [HEOI2012]采花(树状数组)(暑假D11)
    [JLOI2011]飞行路线 (暑假D3 拆点+dijkstra堆优化)
    [POI2012]FES-Festival
    [国家集训队]拉拉队排练
  • 原文地址:https://www.cnblogs.com/sun1997/p/13477100.html
Copyright © 2011-2022 走看看