oracle-只读数据文件的备份与恢复】的更多相关文章

Oracle单个数据文件超过32G后扩容   表空间数据文件容量与DB_BLOCK_SIZE的设置有关,而这个参数在创建数据库实例的时候就已经指定.DB_BLOCK_SIZE参数可以设置为4K.8K.16K.32K.64K等几种,Oracle的物理文件最大只允许4194304个数据块(这个参数具体由操作系统决定,一般应该是此数字),表空间数据文件的最大值对应关系就可以通过4194304×DB_BLOCK_SIZE/1024M计算得出. 4k最大表空间为:16384M 8K最大表空间为:32768…
oracle rename数据文件的两种方法 2012-12-11 20:44 10925人阅读 评论(0) 收藏 举报  分类: oracle(98)  版权声明:本文为博主原创文章,未经博主允许不得转载. 第一种 alter tablespace users rename datafile '==' to ‘***'; 这种方式需要数据库处于open状态,表空间在offline的状态下才能更改. SQL> alter tablespace users rename datafile '/op…
普通数据文件指:非system表空间.undo_tablespace表空间.临时表空间和只读表空间的数据文件.它们损坏导致用户数据不能访问,不会导致db自身异常.实例崩溃.数据库不恢复就无法启动的情况. 恢复这样的数据文件可以采用高可用策略,在数据库OPEN状态下进行 10.1 普通数据文件损坏的后果 普通数据文件损坏后,只是用户的业务数据不同程度上无法访问(查询与修改),报错 ORA-01578,执行命令的会话不会被中断,即使是数据文件头部损坏检查点发生时实例也不会崩溃 --1 实例启动时,若…
ORACLE数据库有时候需要对存储进行调整,增加分区.IO调优等等,此时需要移动数据文件.重做日志文件.控制文件等等,下文结合例子总结一下这方面的知识点. 进行数据文件.重做日志文件.控制文件的迁移前,需要总体了解一下当前Linux服务器的磁盘.分区信息,以及服务器文件使用情况,如下所示 查看Linux服务器的文件使用情况 1: [root@DB-Server ~]# df -h 2:  3: Filesystem Size Used Avail Use% Mounted on 4:  5: /…
在上篇ORACLE查看表空间对象中,我介绍了如何查询一个表空间有那些数据库对象,那么我们是否可以查看某个数据文件包含那些数据库对象呢?如下所示 SELECT  E.SEGMENT_TYPE          AS SEGMENT_TYPE       , E.SEGMENT_NAME          AS SEGMENT_NAME       , F.FILE_NAME             AS FILE_NAME       , SUM(E.BYTES)/1024/1024  AS SE…
一.数据文件的第一个数据块结构kcvfh BBED> set file 1 FILE# 1 BBED> set block 1 BLOCK# 1 --查看第一个数据块的整体结构 BBED> map /v File: /u01/app/oracle/oradata/ORCL/datafile/o1_mf_system_bc7ld3sf_.dbf (1) Block: 1 Dba:0x00400001 ---------------------------------------------…
一.错误分析 1.首先本人在出现这种情况的背景是执行如下SQL语句后生成的表空间 --自定义表空间 数据表空间 临时表空间 CREATE TEMPORARY TABLESPACE HOUSE_TEMP TEMPFILE 'D:\OracleData\HOUSE_TEMP.DBF' SIZE 32M AUTOEXTEND ON NEXT 32M MAXSIZE 2G EXTENT MANAGEMENT LOCAL; CREATE TABLESPACE HOUSE_DATA LOGGING DATA…
  一.关库修改文件位置 1.连接到数据库 [oracle@linux]$ ./sqlplus /nolog SQL> conn / as sysdba 2. 查看数据文件位置 SQL> select name from v$datafile; FILE_NAME ------------------------------------------------------------------------ /oradata/PMPTGDB/users01.dbf /oradata/PMPTG…
1) 手动拷贝要转移的数据数据文件'd:\OracleData\GWTABLE42.DBF'到新的位置'E:\OracleData\GWTABLE42.DBF'. 2) 把数据文件所属的表空间Offline,在SQLPLUS里运行如下命令: sqlplus>alter tablespace GWTABLE offline; 3) 修改表空间文件路径alter database rename file '旧文件路径' to '新文件路径': sqlplus>ALTER DATABASE RENA…
python连接oracle,感觉table_list文件内的表名,来卸载数据文件 主脚本: import os import logging import sys import configparser import subprocess import cx_Oracle #判断输入参数个数 class param(): def check_para(self): if len(sys.argv) != 1: print("请输入正确的参数:yyyymmdd") exit(1) el…
步骤: 1.SQL>SELECT FILE_NAME FROM DBA_DATA_FILES; FILE_NAME -------------------------------------------------------------------------------- D:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\DATAFILE\O1_MF_USERS_4YFV39N0_.DBF D:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\…
在我们详细介绍之前,我们必须说清楚一点:Oracle不提供如删除表.视图一样删除数据文件的方法,数据文件是表空间的一部分,所以不能“移走”表空间. 一.使用offline数据文件的方法 非归档模式使用:alter database datafile '...' offline drop; 归档模式使用:  alter database datafile '...' offline; 说明: 1)         以上命令只是将该数据文件OFFLINE,而不是在数据库中删除数据文件.该数据文件的信…
更改Oracle数据文件名及数据文件存放路径 SQL> select * from v$dbfile;      FILE# NAME---------- --------------------------------------------------------------------------------         1 /db2/oracle/oradata/db2/system01.dbf         2 /db2/oracle/oradata/db2/sysaux01.d…
1.查看当前数据库中的所有用户:select username from dba_users; 2.查看当前会话登录的用户:show user或select username from user_users; 3.查看某用户的所有表:select * from dba_tables where owner='用户名';--用户名要大写或select table_name from dba_tables where owner='NETFOLDER'; 4.查看控制文件的位置等信息:select…
1. 表空间是small file tablespace的 然后数据文件长到了32g左右之后无法再次扩充, 应用报错了 为了性能和最快的处理 使用语句 alter tablespace user add datafile 'c:\cwdata\user21.dbf' size 32g 结果发现是报错的: smf的情况下数据文件最多有1023个(或者是1022个) 然后每个数据文件的大小是 2的22 次方 -1 个blocks 我忘记了为什么需要-1 记录一下.…
Oracle数据库中当某些大数据表不再需要的时候,我们可以通过以下方式来进行清理: DROP TABLE TBL_TEST PURGE; 但是对应表空间(tablespace)中的磁盘空间并没有得到释放,因此我们需要进行以下操作: 1. 首先我们需要了解当前对应表空间的最小文件尺寸,可以通过以下脚本获得 SELECT tablespace_name, file_name, file_size, hwm, file_size - hwm can_save FROM ( SELECT /*+ RUL…
应用背景:需要查看和修改一下Interlib中的数据,所以要反复的将备份数据进行导入和清空.整理一下步骤 删除tablespace drop tablespace interlib including contents; 删除User drop user interlib cascade; 重新创建表空间和用户 create tablespace interlib datafile'/opt/oracle/oradata/interlib/interlib.dbf' size 2048m; al…
  1. 关闭数据库,然后启动至mount状态 sqlplus / as sysdba shutdown immediate startup mount 2. 修改物理文件: 我这边将: c:\cwdata\cwbaseora.dbf 迁移到 c:\cwbaseora.dbf 3. 执行 mount状态下的迁移命令. alter database rename file 'c:\cwdata\cwbaseora.dbf' to 'c:\cwbaseora.dbf'; 然后 alter datab…
11 只读数据文件的备份与恢复 只读数据文件是只读表空间的数据文件,数据块包括文件头在内部允许更改 SQL> alter tablespace yhqt read only; SQL> alter tablespace yhqt read write; 11.1 只读数据文件损坏的后果 当一个表空间从读/写状态更改为只读状态时,其数据文件中的脏数据块必须有DBWn进程写到磁盘,完成一次不完整的完全检查点,该表空间内数据文件即称为只读数据文件. 其数据块及文件头信息包括检查点不在改变,每次打开数…
一.数据文件概述在Oracle数据库中,SYSTEM和SYSAUX表空间至少需要包含一个数据文件,此外还将包含多个其他表空间及与其相关的数据文件和临时文件.Oracle的数据文件和临时文件是操作系统文件,属于数据库物理结构范畴,用于存储数据库中的逻辑结构的数据.在创建表空间时,必须明确的为每个表空间指定数据文件. Oracle通过两种方式为文件分配编号:绝对文件号,用于唯一标识数据库中的数据文件,绝对文件号可以通过v$datafile或v$tempfile视图的FILE#列查询,也可以通过DBA…
13.3无备份恢复控制文件 没有备份恢复控制文件其实就是在nomount状态,create control创建一个新的控制文件. dba必须知道4个信息才能正确的创建:数据库名.在线日志路径及其大小.在线的可读/写数据文件路径.数据库字符集 其中指定数据库字符集是为了在打开数据库之前执行recover tablespace  ..或restore tablespace时可以正确解析表空间名称 --之前在dsi系列介绍了使用bbed查看数据文件头的方式来确定字符集,数据库名等方法. --maxlo…
参考:http://wwyz998.blog.163.com/blog/static/321867852011117111832334/ oracle移动数据文件 1.连接到数据库 [oracle@linux]$ ./sqlplus /nolog SQL> conn / as sysdba 2. 查看数据文件位置 SQL> select file_name from sys.dba_data_files; 或 SQL> select name from v$datafile; FILE_…
在误删除Oracle的数据文件后,如果未关闭数据库,文件句柄还没有释放,且被删除的数据文件占用的磁盘块未被复写,则可以利用句柄的方式来恢复数据文件.下面模拟恢复过程. (一)环境 OS版本:redhat 6.6 数据库版本:Oracle 11.2.0.1 (二)恢复操作 首先,模拟误删除数据库的数据文件.这里删除表空间TBS04下面的数据文件tbs04.bdf: 这个时候绝对不能关闭数据库,一旦关闭数据库,则无法恢复. 删除后查看DBWN进程,进程号为3032 进入这个进程的目录,可以看到我们删…
ORACLE中如何找出大表分布在哪些数据文件中?   在ORACLE数据中,我们能否找出一个大表的段对象分布在哪些数据文件中呢? 答案是可以,我们可以用下面脚本来找出对应表的区.段分别位于哪些数据文件中 SET PAGESIZE 60; COL SEGMENT_TYPE FOR A12; COL FILE_NAME FOR A64; COL SEGMENT_NAME FOR A24; COL TABLESPACE_NAME FOR A24; COL SEGMENT_OWNER FOR A12;…
我们经常会遇到数据库磁盘空间爆满的问题,或由于归档日志突增.或由于数据文件过多.大导致磁盘使用紧俏.这里主要说的场景是磁盘空间本身很大,但表空间对应的数据文件初始化的时候就直接顶满了磁盘空间,导致经常收到磁盘空间满的报警. 一.错误信息 告警内容如下: [发现异常]地产客储系统数据库Oracle_192..xx.xx, ORA: archiver error. Connect internal only, until freed. [发生时间] :: 二.错误原因 上述错误一看大致就知道是由于磁…
原创作品,转自请在文字开头显眼位置注明出处:https://www.cnblogs.com/sunshine5683/p/10052949.html 数据备份恢复在数据库管理中至关重要,今天,总结一下数据库备份与恢复需要注意的方面和实际操作!. 一.在备份之前首先应该执行commit语句,将所有未提交的数据进行提交,(提交了的数据也有可能在内存),执行alter system checkpoint语句,所有的脏数据(内存中所有修改过的数据,这些数据有可能被提交,也有可能未被提交)都会被写入到了磁…
一. 概念 表空间:是一个或多个数据文件的逻辑集合 表空间逻辑存储对象: 永久段-->如表与索引 临时段-->如临时表数据与排序段 回滚段-->用于事物回滚或闪回内存的撤销数据 表空间分类:系统表空间(system.sysaux),非系统表空间 一个表空间至少包含一个数据文件,一个数据文件只能属于一个表空间. 不可或缺的几个表空间: SYSTEM --->字典表空间,不能被损坏 UNDO    --->dml,dql把数据快照到此,数据提交即消失(用于恢复) SYSAUX  …
--============================== --Oracle 表空间与数据文件 --============================== /* 一.概念 表空间:是一个或多个数据文件的逻辑集合 表空间逻辑存储对象: 永久段-->如表与索引 临时段-->如临时表数据与排序段 回滚段-->用于事物回滚或闪回内存的撤销数据 表空间分类:系统表空间(system.sysaux),非系统表空间 一个表空间至少包含一个数据文件,一个数据文件只能属于一个表空间. 不可或缺…
select username,session_num,tablespace from v$sort_usage; Block: 块的组成 Header:包含数据块的概要信息:块地址,块属于哪个段,还有段的类型 表目录:数据所属的表的信息. 行目录:插入行的逻辑地址 预留的空余空间: 行数据区: 获取关于块的信息: show parameter db_block_size select block_size from dba_tablespaces where tablespace_name='…
多个表空间的优势:1.能够将数据字典与用户数据分离出来,避免由于字典对象和用户对象保存在同一个数据文件中而产生的I/O冲突2.能够将回退数据与用户数据分离出来,避免由于硬盘损坏而导致永久性的数据丢失3.能够将表空间的数据文件分散保存到不同的硬盘上,平均分布物理I/O操作4.能够将某个表空间设置为脱机状态或联机状态,以便对数据库的一部分进行备份和恢复5.能够将某个表空间设置为只读状态,从而将数据库的一部分设置为只读状态6.能够为某种特殊用途专门设置一个表空间,比如临时表空间等,以优化表空间的使用效…