更改数据文件路径的方法

数据文件如果从原来目录转移到另外一个目录,如何设置?我总结了一下,大概有三种方法。


第一种方法,适用于转移所有表空间的数据文件(包括system),要求mount状态下完成:

idle> startup mount;
ORACLE 例程已经启动。

Total System Global Area 135339940 bytes
Fixed Size 454564 bytes
Variable Size 109051904 bytes
Database Buffers 25165824 bytes
Redo Buffers 667648 bytes
数据库装载完毕。

idle> alter database rename file 'd:users01.dbf' to 'D:oradatahansonusers01.dbf';

数据库已更改。

idle> alter database open;

数据库已更改。

idle> select file_name from dba_data_files;

FILE_NAME
--------------------------------------------------------------------------------
D:ORADATAHANSONSYSTEM01.DBF
D:ORADATAHANSONUSERS01.DBF
D:ORADATAHANSONDRSYS01.DBF
D:ORADATAHANSONINDX01.DBF
D:ORADATAHANSONTOOLS01.DBF
D:ORADATAHANSONUNDOTBSNEW01.DBF
D:ORADATAHANSONXDB01.DBF

第二种方法,适用于所有非system表空间,要求open状态下完成:

idle> alter tablespace users offline;

表空间已更改。

idle> alter database rename file 'D:oradatahansonusers01.dbf' to 'd:users01.dbf';

数据库已更改。

idle> alter tablespace users online;

表空间已更改。

idle> select file_name from dba_data_files;

FILE_NAME
--------------------------------------------------------------------------------
D:ORADATAHANSONSYSTEM01.DBF
D:USERS01.DBF
D:ORADATAHANSONDRSYS01.DBF
D:ORADATAHANSONINDX01.DBF
D:ORADATAHANSONTOOLS01.DBF
D:ORADATAHANSONUNDOTBSNEW01.DBF
D:ORADATAHANSONXDB01.DBF

已选择7行。

第三种方法,重建控制文件,适用于所有数据文件:

idle> startup nomount;
ORACLE 例程已经启动。

Total System Global Area 135339940 bytes
Fixed Size 454564 bytes
Variable Size 109051904 bytes
Database Buffers 25165824 bytes
Redo Buffers 667648 bytes
idle> @connect '/ as sysdba'
idle> connect / as sysdba
已连接。
idle> CREATE CONTROLFILE REUSE DATABASE "HANSON" NORESETLOGS ARCHIVELOG
2 -- SET STANDBY TO MAXIMIZE PERFORMANCE
3 MAXLOGFILES 50
4 MAXLOGMEMBERS 5
5 MAXDATAFILES 100
6 MAXINSTANCES 1
7 MAXLOGHISTORY 226
8 LOGFILE
9 GROUP 1 'D:ORADATAHANSONREDO01.LOG' SIZE 10M,
10 GROUP 2 'D:ORADATAHANSONREDO02.LOG' SIZE 10M,
11 GROUP 3 'D:ORADATAHANSONREDO03.LOG' SIZE 10M
12 -- STANDBY LOGFILE
13 DATAFILE
14 'D:ORADATAHANSONSYSTEM01.DBF',
15 'D:USERS01.DBF',
16 'D:ORADATAHANSONDRSYS01.DBF',
17 'D:ORADATAHANSONINDX01.DBF',
18 'D:ORADATAHANSONTOOLS01.DBF',
19 'D:ORADATAHANSONUNDOTBSNEW01.DBF',
20 'D:ORADATAHANSONXDB01.DBF'
21 CHARACTER SET ZHS16GBK
22 ;

控制文件已创建

idle> alter database open;
数据库已更改。

system表空间里的数据字典会在open数据库的时候,用控制文件的数据文件所在路径同步。

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

转载于:http://blog.itpub.net/9842/viewspace-156316/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值