修改同一个表空间的数据文件的名称和位置

修改同一个表空间的数据文件的名称和位置,一般在表空间级别进行,因为这样对系统的影响比较小,具体步骤为:

 

  1. 将数据文件所属表空间设置为脱机状态
  2. 在操作系统中改变数据文件的名称或者位置
  3. 执行ALTER TABLESPACE ...RENAME DATAFILE...TO语句,修改数据字典和控制文件中与该数据文件相关的信息
  4. 将数据文件所述表空间设置为联机状态
  5. 备份整个数据库

例如:将orcl数据库表空间的数据文件USERS01.DBF、USERS11.DBF文件移动到F:\oradata目录中去。

  1. SQL> select file_name,bytes from dba_data_files
      2  where tablespace_name='USERS';

 FILE_NAME                                                                       BYTES
--------------------------------------------------                                 ----------
G:\APP\BEI\ORADATA\ORCL\USERS01.DBF                   5242880
G:\APP\BEI\ORADATA\ORCL\USER11.DBF

--将表USERS表空间设置为脱机状态

SQL> alter tablespace users datafile offline;

表空间已更改。

--在操作系统中更改数据文件的名称和位置

SQL>  host copy G:\APP\BEI\ORADATA\ORCL\USERS01.DBF F:\ORADATA\USERS01.DBF;
已复制         1 个文件。

SQL>  host copy G:\APP\BEI\ORADATA\ORCL\USER11.DBF F:\ORADATA\USER11.DBF;
已复制         1 个文件。

 

--使用ALTER TABLESPACE...RENAME DATAFILE...TO语句,修改数据字典和控制文件

SQL> alter tablespace users rename datafile
  2  'G:\APP\BEI\ORADATA\ORCL\USERS01.DBF',
  3  'G:\APP\BEI\ORADATA\ORCL\USER11.DBF' to
  4  'F:\ORADATA\USERS01.DBF','F:\ORADATA\USER11.DBF'
  5  /

表空间已更改。

 

----将USERS表空间设置为联机状态。

SQL> alter tablespace users online;
alter tablespace users online
*
第 1 行出现错误:
ORA-01113: 文件 4 需要介质恢复
ORA-01110: 数据文件 4: 'F:\ORADATA\USERS01.DBF'  (这一点也不知道为什么呀)


SQL> recover datafile 4;
完成介质恢复。
SQL> alter tablespace USERS online;


--备份数据库

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/28811724/viewspace-758682/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/28811724/viewspace-758682/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值