oracedbf文件移动|如何将Oracle数据库数据文件迁移到其它目录

A. 学习oracle视频,看到指定表空间数据文件移动到指定位置遇到问题,host move执行无任何效果

是能移走的呀,不应该没反映的。记得移走之后还要rename datafile.例如:SQL> select file_name from dba_data_files;FILE_NAME——————————————————————————–/u01/oracle/oradata/oradb/users01.dbf/u01/oracle/oradata/oradb/undotbs01.dbf/u01/oracle/oradata/oradb/sysaux01.dbf/u01/oracle/oradata/oradb/system01.dbf/u01/oracle/oradata/oradb/encrypted_ts01.dbfSQL> alter tablespace users offline;Tablespace altered.SQL> alter tablespace users rename datafile '/u01/oracle/oradata/oradb/users01.dbf' to '/u01/oracle/users02.dbf';Tablespace altered.SQL> alter tablespace users online;Tablespace altered.SQL> select file_name from dba_data_files;FILE_NAME——————————————————————————–/u01/oracle/users02.dbf/u01/oracle/oradata/oradb/undotbs01.dbf/u01/oracle/oradata/oradb/sysaux01.dbf/u01/oracle/oradata/oradb/system01.dbf/u01/oracle/oradata/oradb/encrypted_ts01.dbfSQL> !ls -a /u01/oracle/users02.dbf/u01/oracle/users02.dbfSQL> !ls -a /u01/oracle/oradata/oradb/users01.dbfls: /u01/oracle/oradata/oradb/users01.dbf: No such file or directory

B. oracle的dbf文件如何把数据导出来

oracle的dbf文件导出数据:只有DBF文件的情况下做Oracle 数据恢复1)数据库所有的DBF文件都在,没有缺失,也没有损坏这个情况是最简单的 自己建一个参数文件INIT.ORA,并基于这些DBF文件去创建控制文件,然后尝试打开数据库即可。如果说数据文件都是干净的CLEAN的,那么直接可以打开。如果数据文件是DIRTY的,这里由于没有REDO LOG了,所以需要以隐藏参数等方式打开数据库。2) 数据库DBF有少量缺失,缺失主要是非SYSTEM01.DBF的数据文件,没有损坏这种情况在 1)的基础上将缺失的数据文件OFFLINE DROP掉就好了,因为对应的数据文件都没了,那么丢了对应数据文件上的数据也很正常3) 数据库DBF有少量缺失,缺失主要是非SYSTEM01.DBF的数据文件,非SYSTEM01.dbf的数据文件有少量损坏这种情况在 2)的基础上打开数据库问题并不大,但打开数据库后 由于其他表空间数据文件上有少量损坏,所以具体访问用户数据时可能出现ORA-1578、ORA-8103、ORA-1410、ORA-00600等错误,还是比较容易克服的4) 数据库DBF有少量缺失,缺失主要是非SYSTEM01.DBF的数据文件,SYTEM01.DBF有损坏这种情况下打开数据库就不容易了,可能需要用到BBED技术去修改SYSTEM01.DBF,以便才能打开数据库5) 只有部分DBF,其中还缺失了SYSTEM01.DBF这种情况不要指望能打开数据库,只能使用PRM-DUL之类的软件 来直接抽取数据以上情况1)~4) 只要SYSTEM01.DBF还在或者损坏的不是太严重,那么都可以由专业技术人员去打开数据库后导出数据,但是在情况5)下只能使用DUL类工具去抽取数据了。

C. oracle其他数据库的dbf文件如何加入到当前数据库

一)、导出/导入(EXPORT/IMPORT) EXPORT/IMPORT是用来将ORACLE中数据移出/移入数据库。 1、EXPORT将数据库中数据备份成一个二进制系统文件称为“导出转储文件”(EXPORTDUMP FILE),并将重新生成数据库写入文件中。 它有三种模式: a.用户模式:导出用户所有对象以及对象中的数据; b.表模式:导出用户所有表或者指定的表; c.整个数据库:导出数据库中所有对象。 它的备份有三种类型: a.完全型(COMPLETE EXPORT):备份整个数据库; b.积累型(COMULATIVE ERPORT):备份上一次积累型备份所改变的数据; c.增量型(INCREAMENTAL EXPORT):备份上一次备份后改变的数据。 EXPORT 的命令可以交互式进行,各参数的具体含义见附录。 在进行导出备份时我们要考虑一点问题,那就是导出的一致性,在导出过程 中导出每读一次就读取一个表,因而尽管导出是在一个特点时自己开始的,但不同的表读取的时间不同,因此,导出开始读一个表时,此时表中的数据才是导出的数据,这样当大多数表按内部关键字和外部关键字相互联系时,在导出过程中这些相关联表的改变就会导致导出的不一致性,要避开这个,我们可以将导出过程安排在不对表操作的时候进行。另外,当ORACLE中RESTRICTEP 2、IMPORT导入: 导入的过程是导出的逆过程,这个命令先读取导出来的导出转储二进制文件,并运行文件 IMPORT命令执行的方法和EXPORT方案有关。 1、如果EXPORT所实施的是完全型方案(FULL)则在IMPORT时所有的数据对象,包括表空间,数据文件,用户都会在导入时创建,但考虑到数据库中的物理布局,预先创建表空间和用户 2、如果EXPORT使用的是INCREMENTAL/CUMULATIVE方式,则需要预先设置好表空间、用户 (二):冷备份 冷备份发生在数据库已经正常关闭的情况下,当正常关闭时会提供给我们一个完整的数据 数据库使用的每个文件都被备份下来,这些文件包括: ☆所有数据文件 ☆所有控制文件 ☆所有联机REDO LOG 文件 ☆INIT.ORA文件(可选) 值得注意的是冷备份必须是数据库关闭的情况下完成,当数据库开着的时候,执行数据库 作冷备份一般步骤是: 1:正常关闭要备份的实例(instance); 2: 备份整个数据库到一个目录 3:启动数据库 1: SQLDBA>connect internal SQLDBA>shutdown normal 2: SQLDBA>! cp 或 SQLDBA>!tar cvf /dev/rmt/0 /wwwdg/oracle 3: SQLDBA>startup (三)热备份(ACHIRELOG) 数据库需要二十四小时运行,而且随时有新的数据加入.数据丢失将影响整个公司.采用 ?设置数据库为automatic archivelog mode, #su – oracle %svrmgrl svrmgrl>connect internal svrmgrl>startup mount svrmgrl>alter database archivelog svrmgrl>shutdown svrmgrl>exit %vi initoracle7.ora 加入log_archive_start = true # if you want automatic archiving log_archive_dest = $ORACLE_HOME/dbs/arch log_archive_format = log%s.arc %dbstart %ps -ef|grep arch oracle 1743 1 0 15:20:20 ? 0:00 ora_arch_oracle7 注:oracle database is in automatic archivelog mode ?full offline entire database backup, 当数据库初始完成后 这份备份是将来备份的 %dbshut %cp /oracle/oradata/oracle7/system.dbf /oracle/oradata/oracle7/rbs.dbf /oracle/oradata/oracle7/temp.dbf /oracle/oradata/oracle7/tools.dbf /oracle/oradata/oracle7/users.dbf /oraclecle/app/oracle/proct/7.3.2/dbs/application.dbf /oracle/app/oracle/proct/7.3.2/dbs/apptmpsp.dbf /oracle/app/oracle/proct/7.3.2/dbs/apprlbksp.dbf /oracle/oradata/oracle7/redooracle.log /oracle/oradata/oracle7/control1.ctl /oracle/oradata/oracle7/control2.ctl /oracle/oradata/oracle7/control3.ctl %dbstart 注:以上*.dbf文件为数据文件,*.log文件为日志文件,*.ctl文件为控制文件 %exit %tar uvf /dev/rmt/0 注:如果为oracle 7.2 ,则 相应的 data files,relog files,control files. 6.3、每天做一次 partial online with archiving backups . #su – oracle %svrmgrl %svrmgrl>connect internal %svrmgrl>alter tablespace billsp begin backup %svrmgrl>alter tablespace billtmpsp begin backup %svrmgrl>alter tablespace billrlbksp begin backup %svrmgrl>alter tablespace system begin backup %svrmgrl>alter tablespace rbs begin backup %svrmgrl>alter tablespace temp begin backup %svrmgrl>alter tablespace tools begin backup %svrmgrl>alter tablespace users begin backup %svrmgrl>host cp all datafile to the backup storage. #文件名如第一步中以.dbf结尾的. %svrmgrl>alter tablespace billsp end backup %svrmgrl>alter tablespace billtmpsp end backup %svrmgrl>alter tablespace billrlbksp end backup %svrmgrl>alter tablespace system end backup %svrmgrl>alter tablespace rbs end backup %svrmgrl>alter tablespace temp end backup %svrmgrl>alter tablespace tools end backup %svrmgrl>alter tablespace users end backup 做一个sql文件,如上所写. The billing system can recover to the point of failure when the failure occur.

D. 怎样移动Oracle数据库的表空间

扩展临时表空间:方法一、增大临时文件大小:sql>alterdatabasetempfile‘/u01/app/oracle/oradata/orcl/temp01.dbf’resize100m;方法二、将临时数据文件设为自动扩展:sql>alterdatabasetempfile‘/u01/app/oracle/oradata/orcl/temp01.dbf’autoextendonnext5mmaxsizeunlimited;方法三、向临时表空间中添加数据文件:sql>altertablespacetempaddtempfile‘/u01/app/oracle/oradata/orcl/temp02.dbf’size100m;

E. oracle临时表空间可以迁移吗

可以,不但可以移动到其它地方,还可以新建、更改默认临时表空间等。你这路径不对吧,移动的文件是"/dir1/lncrmbak/TEMP02.dbf",移动到"/oradata/TEMP02.dbf",rename file也应该是"原来的路径"到"移动到的路径"

F. oracle其他数据库的dbf文件如何加入到当前数据库

一)、导出/导入(EXPORT/IMPORT) EXPORT/IMPORT是用来将ORACLE中数据移出/移入数据库。 1、EXPORT将数据库中数据备份成一个二进制系统文件称为“导出转储文件”(EXPORTDUMP FILE),并将重新生成数据库写入文件中。 它有三种模式: a.用户模式:导出用户所有对象以及对象中的数据; b.表模式:导出用户所有表或者指定的表; c.整个数据库:导出数据库中所有对象。 它的备份有三种类型: a.完全型(COMPLETE EXPORT):备份整个数据库; b.积累型(COMULATIVE ERPORT):备份上一次积累型备份所改变的数据; c.增量型(INCREAMENTAL EXPORT):备份上一次备份后改变的数据。 EXPORT 的命令可以交互式进行,各参数的具体含义见附录。 在进行导出备份时我们要考虑一点问题,那就是导出的一致性,在导出过程 中导出每读一次就读取一个表,因而尽管导出是在一个特点时自己开始的,但不同的表读取的时间不同,因此,导出开始读一个表时,此时表中的数据才是导出的数据,这样当大多数表按内部关键字和外部关键字相互联系时,在导出过程中这些相关联表的改变就会导致导出的不一致性,要避开这个,我们可以将导出过程安排在不对表操作的时候进行。另外,当ORACLE中RESTRICTEP 2、IMPORT导入: 导入的过程是导出的逆过程,这个命令先读取导出来的导出转储二进制文件,并运行文件 IMPORT命令执行的方法和EXPORT方案有关。 1、如果EXPORT所实施的是完全型方案(FULL)则在IMPORT时所有的数据对象,包括表空间,数据文件,用户都会在导入时创建,但考虑到数据库中的物理布局,预先创建表空间和用户 2、如果EXPORT使用的是INCREMENTAL/CUMULATIVE方式,则需要预先设置好表空间、用户 (二):冷备份 冷备份发生在数据库已经正常关闭的情况下,当正常关闭时会提供给我们一个完整的数据 数据库使用的每个文件都被备份下来,这些文件包括: ☆所有数据文件 ☆所有控制文件 ☆所有联机REDO LOG 文件 ☆INIT.ORA文件(可选) 值得注意的是冷备份必须是数据库关闭的情况下完成,当数据库开着的时候,执行数据库 作冷备份一般步骤是: 1:正常关闭要备份的实例(instance); 2: 备份整个数据库到一个目录 3:启动数据库 1: SQLDBA>connect internal SQLDBA>shutdown normal 2: SQLDBA>! cp 或 SQLDBA>!tar cvf /dev/rmt/0 /wwwdg/oracle 3: SQLDBA>startup (三)热备份(ACHIRELOG) 数据库需要二十四小时运行,而且随时有新的数据加入.数据丢失将影响整个公司.采用 ?设置数据库为automatic archivelog mode, #su – oracle %svrmgrl svrmgrl>connect internal svrmgrl>startup mount svrmgrl>alter database archivelog svrmgrl>shutdown svrmgrl>exit %vi initoracle7.ora 加入log_archive_start = true # if you want automatic archiving log_archive_dest = $ORACLE_HOME/dbs/arch log_archive_format = log%s.arc %dbstart %ps -ef|grep arch oracle 1743 1 0 15:20:20 ? 0:00 ora_arch_oracle7 注:oracle database is in automatic archivelog mode ?full offline entire database backup, 当数据库初始完成后 这份备份是将来备份的 %dbshut %cp /oracle/oradata/oracle7/system.dbf /oracle/oradata/oracle7/rbs.dbf /oracle/oradata/oracle7/temp.dbf /oracle/oradata/oracle7/tools.dbf /oracle/oradata/oracle7/users.dbf /oraclecle/app/oracle/proct/7.3.2/dbs/application.dbf /oracle/app/oracle/proct/7.3.2/dbs/apptmpsp.dbf /oracle/app/oracle/proct/7.3.2/dbs/apprlbksp.dbf /oracle/oradata/oracle7/redooracle.log /oracle/oradata/oracle7/control1.ctl /oracle/oradata/oracle7/control2.ctl /oracle/oradata/oracle7/control3.ctl %dbstart 注:以上*.dbf文件为数据文件,*.log文件为日志文件,*.ctl文件为控制文件 %exit %tar uvf /dev/rmt/0 注:如果为oracle 7.2 ,则 相应的 data files,relog files,control files. 6.3、每天做一次 partial online with archiving backups . #su – oracle %svrmgrl %svrmgrl>connect internal %svrmgrl>alter tablespace billsp begin backup %svrmgrl>alter tablespace billtmpsp begin backup %svrmgrl>alter tablespace billrlbksp begin backup %svrmgrl>alter tablespace system begin backup %svrmgrl>alter tablespace rbs begin backup %svrmgrl>alter tablespace temp begin backup %svrmgrl>alter tablespace tools begin backup %svrmgrl>alter tablespace users begin backup %svrmgrl>host cp all datafile to the backup storage. #文件名如第一步中以.dbf结尾的. %svrmgrl>alter tablespace billsp end backup %svrmgrl>alter tablespace billtmpsp end backup %svrmgrl>alter tablespace billrlbksp end backup %svrmgrl>alter tablespace system end backup %svrmgrl>alter tablespace rbs end backup %svrmgrl>alter tablespace temp end backup %svrmgrl>alter tablespace tools end backup %svrmgrl>alter tablespace users end backup 做一个sql文件,如上所写. The billing system can recover to the point of failure when the failure occur.

G. oracle数据库迁移问题—要详细–会追加50分

1.可以用oracle的表空间传输2.用stream或高级复制3.不成的话,直接在目标库创建一个与源库完全相同的DB,然后把controlfile,spfile,init_SID.ora,pwdfile拷贝到目标库的相同目录下,然后使用一个rman备份,进行恢复。4.可以做成DG,将新库设置成standby db,源库设置为primary db。然后做些切换应该也可以。5.用数据泵impdp/expdp。不知道你的数据量有多大?如果几百G的话,设置好参数,不导index,加commit=y,或是写PLSQL,没10000行commit一次。速度应该还是可以的。上面4中方法都可以,感觉方法3,4不错,3我测试过,可以的,而且步骤基本也就这样。2我没用过。方法1也可以,查下资料就可以,不是很难。有的详细步骤比较麻烦,还是自己先看下资料,或是请专业DBA来做下吧

H. 如何把oralce的数据库移动其他文件夹

1、创建pfile create pfile from spfile;2、关闭数据库 shutdown immediate3、移动文件,并且准备一个文件列表(控制文件、数据文件、联机日志文件)。4、记事本修改pfile内容,将控制文件位置改为新文件位置。5、使用修改后的pfile启动到mount状态 startup mount pfile='xxxx';6、逐个修改数据文件位置 alter database rename file 'D:\oracle\proct\10.2.0\oradata\orcl\system01.dbf' to 'e:\xxx\system01.dbf'; … 注:临时表空间的文件可以不用管,回头删了重新创建即可。7、打开数据库。 alter database open;8、根据新的pfile重新创建spfile create spfile from pfile='xxxx';9、完毕。

I. 如何将Oracle数据库数据文件迁移到其它目录

Oracle更改数据文件位置方法一:offline表空间1、offline表空间:alter tablespace tablespace_name offline;2、复制数据文件到新的目录;3、rename修改表空间,并修改控制文件;4、online表空间;1、offline表空间zeroneSQL> select name from v$datafile;NAME——————————————————————————–C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\SYSTEM01.DBFC:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\UNDOTBS01.DBFC:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\SYSAUX01.DBFC:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\USERS01.DBFC:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\EXAMPLE01.DBFC:\ORACLE\PRODUCT\10.2.0\ORADATA\ZERONE01.DBFC:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\RMANTS.DBF已选择7行。SQL> alter tablespace zerone offline;表空间已更改。2、复制数据文件到新的目录复制数据文件C:\ORACLE\PRODUCT\10.2.0\ORADATA\ZERONE01.DBF到C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\ZERONE01.DBF。3、rename修改表空间数据文件为新的位置,并修改控制文件SQL> alter tablespace zerone rename datafile 'c:\oracle\proct\10.2.0\oradata\zerone01.dbf' to 'c:\oracle\proct\10.2.0\oradata\orcl\zerone01.dbf';表空间已更改。4、online表空间SQL> alter tablespace zerone online;表空间已更改。SQL> select name from v$datafile;NAME——————————————————————————–C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\SYSTEM01.DBFC:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\UNDOTBS01.DBFC:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\SYSAUX01.DBFC:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\USERS01.DBFC:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\EXAMPLE01.DBFC:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\ZERONE01.DBFC:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\RMANTS.DBF已选择7行。SQL> select file_name,tablespace_name from dba_data_files where tablespace_name='ZERONE';FILE_NAME TABLESPACE_NAME————————————————————————————————ZERONE C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\ZERONE01.DBF方法二:SQL修改数据文件位置1、关闭数据库;2、复制数据文件到新的位置;3、启动数据库到mount状态;4、通过SQL修改数据文件位置;5、打开数据库;1、关闭数据库SQL> select name from v$datafile;NAME——————————————————————————–C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\SYSTEM01.DBFC:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\UNDOTBS01.DBFC:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\SYSAUX01.DBFC:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\USERS01.DBFC:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\EXAMPLE01.DBFC:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\ZERONE01.DBFC:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\RMANTS.DBF已选择7行。SQL> shutdown immediate;数据库已经关闭。已经卸载数据库。ORACLE 例程已经关闭。2、复制数据文件到新的位置;将数据文件C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\ZERONE01.DBF复制到C:\ORACLE\PRODUCT\10.2.0\ORADATA\ZERONE01.DBF。3、启动数据库到mount状态;SQL> startup mountORACLE 例程已经启动。Total System Global Area 167772160 bytesFixed Size 1247900 bytesVariable Size 96470372 bytesDatabase Buffers 67108864 bytesRedo Buffers 2945024 bytes数据库装载完毕。4、通过SQL修改数据文件位置;SQL> alter database rename file 'c:\oracle\proct\10.2.0\oradata\orcl\zerone01.dbf' to 'c:\oracle\proct\10.2.0\oradata\zerone01.dbf';数据库已更改。5、打开数据库;SQL> alter database open;数据库已更改。SQL> select name from v$datafile;NAME——————————————————————————–C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\SYSTEM01.DBFC:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\UNDOTBS01.DBFC:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\SYSAUX01.DBFC:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\USERS01.DBFC:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\EXAMPLE01.DBFC:\ORACLE\PRODUCT\10.2.0\ORADATA\ZERONE01.DBFC:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\RMANTS.DBF已选择7行。SQL> select file_name,tablespace_name from dba_data_files where tablespace_name='ZERONE';FILE_NAME TABLESPACE_NAME————————————————————————————————-ZERONE C:\ORACLE\PRODUCT\10.2.0\ORADATA\ZERONE01.DBF

J. 怎样移动Oracle数据库的表空间

1.关闭运行中的数据库SQL> shutdown immediate2.启动数据库到mount状态SQL> startup mount3.移动系统表空间(SYSTEM表空间)的数据文件SQL> host move D:\ORADATA\ORCL\SYSTEM01.DBF D:\ORACLE\ORADATA\4.修改该表空间的数据文件路径 SQL> alter database rename file 'D:\ORADATA\ORCL\SYSTEM01.DBF' to 'D:\ORACLE\ORADATA\SYSTEM01.DBF'; 5.启动数据库,打开实例SQL> alter database open;


赞 (0)