当前位置:  数据库>oracle

Oracle—用户管理的备份

    来源: 互联网  发布时间:2017-05-24

    本文导语: Oracle—用户管理的备份(一) 一.首先要知道数据库中表空间和文件的信息,有几个性能视图,v$datafile,v$tablespace,v$tempfile,v$logfile,v$controlfile,dba_tablespaces,dba_data_files可以用它们来查看表空间或者文件的位置和名字,其中dba_...

Oracle—用户管理的备份(一)

一.首先要知道数据库中表空间和文件的信息,有几个性能视图,v$datafile,v$tablespace,v$tempfile,v$logfile,v$controlfile,dba_tablespaces,dba_data_files可以用它们来查看表空间或者文件的位置和名字,其中dba_data_files可以查看到每个数据文件属于哪个表空间。

参考阅读:

Oracle教程:用户管理的备份

推荐阅读:

Oracle基础教程之通过RMAN复制数据库

RMAN备份策略制定参考内容

RMAN备份学习笔记

Oracle数据库备份加密 RMAN加密

对于查看每个数据文件属于哪个表空间也可以用$datafile,v$tablespace来join一下。

例如:

SQL> select  t.name tablespace,d.name datafile from  v$tablespace t  join  v$datafile d  on t.ts#=d.ts#;

TABLESPACE                    DATAFILE

------------------------------              -----------------------------------

SYSTEM                        /u01/oradata/wilson/system01.dbf

SYSAUX                        /u01/oradata/wilson/sysaux01.dbf

UNDOTBS1                      /u01/oradata/wilson/undotbs01.dbf

USERS                          /u01/oradata/wilson/users01.dbf

EXAMPLE                        /u01/oradata/wilson/example01.dbf

PAUL                          /u01/oradata/wilson/paul01.dbf

SUN                            /u01/oradata/wilson/sun01.dbf

SMALLUNDO                      /u01/oradata/wilson/smallundo1.dbf

ASSM                          /u01/oradata/wilson/assm_1.dbf

MSSM                          /u01/oradata/wilson/mssm_1dbf

PAUL                          /u01/oradata/wilson/paul02.dbf

二.备份的方式

1.处于非归档模式

在非归档模式下,关闭数据库执行完整的备份是唯一的选择。

在上面给出的视图中找到每个文件的位置,要备份的有控制文件和整个数据文件集,最好把临时文件和spfile,password文件(它们在/u01/oracle/dbs中)一起也备份了。

在备份之前必须干净的关闭数据库,那么对于联机重做日志没有必要备份。但是如果是出现不干净的关闭数据库,那么必须备份联机重做日志,不然还原后无法打开数据库。(其实无论在什么情况下,最好都备份)

2.处于归档模式

在归档模式下,既可以在关闭数据库时备份也可以在打开数据库时备份;

(一)在关闭数据库时备份和非归档模式备份是一样,有一个差别就是不备份联机重做日志了,改为备份归档日志。

(二)在打开数据库时备份,备份是非一致性的,所以必须备份归档日志文件。

有下面三个步骤:

(1)备份控制文件

备份控制文件有两种方式,

alter database backup confile to ;

alter database backup confile to  trace as ;

第一种形式生成一个二进制备份,输出文件将是当前控制文件的严格的读一致性副本;

第二种形式生成一个逻辑备份,在指定文件中使用一组SQL命令来创建一个新的控制文件,并且包含与当前的控制文件相同的数据库物理结构信息。

这里说明一下create controlfile命令,它必须在非加载模式下执行,并且在control_files参数指定的位置生成一个新的控制文件;这个命令生成的新控制文件只包含与物理结构有关的数据;例如RMAN备份将会丢失。

在操作系统下建立个目录/tmp/con,用第一种形式备份控制文件;

SQL> alter database backup  controlfile to '/tmp/con/c1.ctl';

Database altered.

SQL> !ls -l /tmp/con

total 9636

-rw-r----- 1 oracle oinstall 9846784 Aug 23 10:07 c1.ctl

用第二种形式备份控制文件;

SQL> alter database backup controlfile to trace as '/tmp/con/c2.ctl';

Database altered.

SQL> !ls -l /tmp/con

total 9648

-rw-r----- 1 oracle oinstall 9846784 Aug 23 10:07 c1.ctl

-rw-r--r-- 1 oracle oinstall    7107 Aug 23 10:11 c2.ctl

只要控制文件发生变化就要备份它,建议每次备份时都备份一下控制文件。

(2)关于归档日志文件备份

先执行alter system archive log current,再找到归档日志位置,复制到别的地方即可。

有关归档日志的设置请参照:归档模式

(3)当他们的表空间置于备份模式时复制数据文件;

有关备份模式请参照:oracle中backup模式

查看有哪些表空间;

SQL> select tablespace_name,contents from dba_tablespaces;

TABLESPACE_NAME                CONTENTS

------------------------------                  ---------

SYSTEM                        PERMANENT

SYSAUX                        PERMANENT

UNDOTBS1                      UNDO

TEMP                          TEMPORARY

USERS                          PERMANENT

EXAMPLE                        PERMANENT

PAUL                          PERMANENT

MYTEMP                        TEMPORARY

SUN                            PERMANENT

SMALLUNDO                      UNDO

ASSM                          PERMANENT

TABLESPACE_NAME                CONTENTS

------------------------------                ---------

MSSM                          PERMANENT

12 rows selected.

查看一下表空间中有哪些数据文件;

SQL> select tablespace_name,file_name from  dba_data_files;

TABLESPACE_NAME                FILE_NAME

------------------------------ -----------------------------------

PAUL                          /u01/oradata/wilson/paul01.dbf

USERS                          /u01/oradata/wilson/users01.dbf

UNDOTBS1                      /u01/oradata/wilson/undotbs01.dbf

SYSAUX                        /u01/oradata/wilson/sysaux01.dbf

SYSTEM                        /u01/oradata/wilson/system01.dbf

EXAMPLE                        /u01/oradata/wilson/example01.dbf

SUN                            /u01/oradata/wilson/sun01.dbf

SMALLUNDO                      /u01/oradata/wilson/smallundo1.dbf

ASSM                          /u01/oradata/wilson/assm_1.dbf

MSSM                          /u01/oradata/wilson/mssm_1dbf

PAUL                          /u01/oradata/wilson/paul02.dbf

11 rows selected.

在备份前,先创建个目录/tmp/hb

把sun表空间改为backup模式下,

SQL> alter tablespace sun begin backup;

Tablespace altered.

备份表空间下的数据文件,

SQL> !cp  /u01/oradata/wilson/sun01.dbf  /tmp/hb

查看一下结果,

SQL> !ls  -l /tmp/hb

total 20516

-rw-r----- 1 oracle oinstall 20979712 Aug 22 23:01 sun01.dbf

结束备份,

SQL> alter tablespace sun  end backup;

Tablespace altered.

在数据库打开的情况下手动备份(在归档模式下),必须执行begin  backup,虽然可以在操作系统层面上备份,但是其备份的将不能使用。

也可以使用SQL> alter database  begin  backup;

Database altered.

把所有的表空间一次性的全部处于backup模式。

还有一点就是不能备份临时表空间,甚至不能将他们置于备份模式。

SQL> alter tablespace temp begin  backup;

alter tablespace temp begin  backup

*

ERROR at line 1:

ORA-03217: invalid option for alter of TEMPORARY TABLESPACE

(4)备份参数文件和口令文件

对它们的备份不是必须的,但是为了方便的还原它们,最好还是备份了;

参数文件,为了备份spfile,使用下面的命令生成个文本文件。

SQL> create pfile='initwilson.ora' from spfile;

如果动态参数文件在某个时候受损,那么在非加载模式下使用该命令重新创建它或者在关闭实例时也可以执行,、

Create spfile from  pfile=’initwilson.ora’;

口令文件,为了备份口令文件,保存用来创建��的命令的一个副本。如:

orapwd file=$ORACLE_HOME/dbs/orapwd  password=oracle  entries=5;

其中是实例名称。如果口令文件某个时刻被损坏,那么简单运行该脚本来重新创建它。

续:Oracle—用户管理的备份(二)


    
 
 

您可能感兴趣的文章:

  • 如何将Aix上的oracle 物理备份 然后再在linux 系统上还原oracle
  • Oracle数据库设置任务计划备份一周的备份记录
  • Oracle数据库备份和恢复工具 RMan
  • oracle10g 数据备份与导入
  • aix下自动备份oracle 的输出日志问题,急!!
  • hp unix下备份oracle表的问题
  • linux小白提问linux备份oracle数据库的问题
  • oracle不能自动备份
  • Oracle数据库逻辑备份的SH文件
  • Linux环境中Oracle数据导入与导出备份操作
  • oracle数据库备份急???????????
  • oracle定时备份压缩的实现步骤
  • Unix系统下如何将oracle数据库备份
  • 详解如何应用改变跟踪技术加速Oracle递增备份
  • Oracle中备份表的简单sql命令语句
  • 实战Oracle数据库备份与恢复
  • Linux下实现自动备份Oracle数据库
  • oracle备份恢复的具体方法
  • 利用windows任务计划实现oracle的定期备份
  • Oracle11g备份和恢复功能的提高
  • 请问在solaris下安装ORACLE,用root用户和用oracle用户安装有什么区别么?
  • oracle创建删除用户示例分享(oracle删除用户命令及授权)
  • linux6.0下安装oracle11g, 新建用户后,在用户目录下为什么没有.bash_profile文件生成? 求教高手。谢谢!
  • Oracle一个用户如何访问其它用户的表应用指南
  • oracle用户口令丢了
  • 修改oracle用户的.bash_profile之后无法正常登陆
  • linux下如何查看是什么用户安装的oracle
  • oracle+jsp 多用户查询系统讨论:
  • ORACLE 中修改用户密码的方法
  • linux中定时任务 oracle用户该如何做?
  • 杀掉oracle在线用户脚本分享
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 求助:oracle9在redhat9上安装好后,oracle管理工具会在菜单工具栏上显示吗?
  • Oracle自动存储管理支持库 ASMLib
  • Oracle ASM自动管理存储管理简介
  • windows上要装什么软件才能管理到linux上的oracle?
  • 在HP Unix 下Oracle的控制和管理
  • 用Oracle管理服务器将数据导入与导出
  • Oracle管理工具 phpOraAdmin
  • Linux上管理本机Oracle的时候出现找不到ServiceName的错误
  • 有谁知道Oracle8的数据库管理工具是用什么开发工具编写的?
  • 甲骨文新推Oracle Linux管理软件包
  • oracle区管理和段空间管理详细介绍
  • Oracle 管理Undo数据
  • 关于Oracle数据库管理员认证方法简述
  • Oracle 权限管理入门
  • Oracle使用配置文件创建口令管理策略
  • Oracle中Datafiles的管理
  • Oracle 9i中自动撤销管理的优点分析
  • Oracle帐户管理
  • Oracle数据库安全性管理基本措施实例解析
  • Oracle 数据库管理脚本命名规范
  • Oracle 12c发布简单介绍及官方下载地址
  • 在linux下安装oracle,如何设置让oracle自动启动!也就是让oracle那个服务自动启动,不是手动的
  • oracle 11g最新版官方下载地址
  • 请问su oracle 和su - oracle有什么不同?
  • Oracle 数据库(oracle Database)Select 多表关联查询方式
  • 虚拟机装Oracle R12与Oracle10g
  • Oracle数据库(Oracle Database)体系结构及基本组成介绍
  • Oracle 数据库开发工具 Oracle SQL Developer
  • 如何设置让Oracle SQL Developer显示的时间包含时分秒
  • Oracle EBS R12 支持 Oracle Database 11g
  • Oracle 10g和Oracle 11g网格技术介绍


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,