oracle更改文件,更改ORACLE数据文件名字的方法

在论坛上看到一个经常遇到的问题,移动数据文件,收录一下,以后用得到:

有两种方法可以更改ORACLE数据文件的名字,联机方法与脱机方法。

一:脱机(可以移动任何表空间中的数据文件、日志文件,命令为alter database rename file)

Because the SYSTEM tablespace cannot be taken offline, you must use this method to move data files in the SYSTEM tablespace.

具体步骤为

1:$sqlplus “/ as sysdba”

SQL>shutdown

2:$mv or move  (使用操作系统命令改名字)

3:$sqlplus “/ as sysdba”

SQL>startup mount

SQL>alter database rename file 'xxxxx' to 'xxxxx'

(注意在alter open之前不要退出)

4:SQL>alter database open;

二:联机(不可移动system表空间,回滚段和临时表空间中的数据文件,命令为alter tablespace )

The following alter tablespace command is applied only to data files in a non-SYSTEM tablespace that does not contain active rollback or temporary segments:

具体步骤为:

1:$sqlplus “/ as sysdba”;

SQL>alter tablespace xxxx offline(如果非归档加drop);

2:$mv xxxxx xxxxx  (用os命令移动数据文件)

3:SQL>alter tablespace xxxx rename datafile 'xxxx' to 'xxxxx';

4:SQL>alter tablespace xxxx online;

三:表空间OFFLINE和ONLINE可以考虑是否是归档模式,可是,移动数据文件 ,一定是在归档模式下进行:

例如:

1、ALTER DATABASE DATAFILE '/oracle/test/BULLETIN_INFO.dbf' OFFLINE;(归档模式)

2、SQL> ALTER DATABASE DATAFILE '/oracle/test/BULLETIN_INFO.dbf' OFFLINE;

ALTER DATABASE DATAFILE '/oracle/test/BULLETIN_INFO.dbf' OFFLINE

*

第 1 行出现错误:

ORA-01145: offline immediate disallowed unless media recovery enabled

ALTER DATABASE RENAME FILE '/oracle/test/BULLETIN_INFO.dbf'TO '/oracle/bulletin.dbf';

(非归档模式)

3、SQL> conn as sysdba

已连接。

SQL> ALTER DATABASE DATAFILE '/oracle/test/BULLETIN_INFO.dbf' OFFLINE;

数据库已更改。

SQL> ALTER DATABASE RENAME FILE '/oracle/test/BULLETIN_INFO.dbf'TO '/oracle/bull

etin.dbf';

数据库已更改。

归档模式下移动一个数据文件!

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值