It is possible to move/rename the online redo logs should the need arise. This document will detail the steps required to move/rename the online redo logs in an 11gR2 environment on Linux. These steps also apply to a 10g environment.
在有特殊需求时我们可能需要对联机在线日志进行移动或重命名,遵照一下步骤即可完成(9i/10g/11g)
1. 校验位置
1
2
3
4
5
6
7
8
9
|
SQL>
select
member from
v$logfile; MEMBER -------------------------------------------------------------------------------- /u02/app/oracle/oradata/orcl/redo03.log /u02/app/oracle/oradata/orcl/redo02.log /u02/app/oracle/oradata/orcl/redo01.log SQL>
|
2. 关闭数据库拷贝
source: /u02/app/oracle/oradata/orcl target:
/u02/app/oracle/oradata/orcl/redo
确保数据库处于mount状态
First we will shutdown the database and move the online redo logs to their new location.
1
2
3
4
5
6
7
8
9
10
11
12
|
SQL> shutdown immediate Database
closed. Database
dismounted. ORACLE instance shut down. SQL> host [oracle@ora1 ~]$ mv /u02/app/oracle/oradata/orcl/redo01.log /u02/app/oracle/oradata/orcl/redo/redo01.log [oracle@ora1 ~]$ mv /u02/app/oracle/oradata/orcl/redo02.log /u02/app/oracle/oradata/orcl/redo/redo02.log [oracle@ora1 ~]$ mv /u02/app/oracle/oradata/orcl/redo03.log /u02/app/oracle/oradata/orcl/redo/redo03.log [oracle@ora1 ~]$ exit exit SQL>
|
3.修改数据字典
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
SQL> startup mount ORACLE instance started. Total System
Global
Area 849530880 bytes Fixed
Size
1339824 bytes Variable
Size
528485968 bytes Database
Buffers 314572800 bytes Redo Buffers 5132288 bytes Database
mounted. SQL>
alter
database rename file '/u02/app/oracle/oradata/orcl/redo01.log'
to '/u02/app/oracle/oradata/orcl/redo/redo01.log' ; Database
altered. SQL>
alter
database rename file '/u02/app/oracle/oradata/orcl/redo02.log'
to '/u02/app/oracle/oradata/orcl/redo/redo02.log' ; Database
altered. SQL>
alter
database rename file '/u02/app/oracle/oradata/orcl/redo03.log'
to '/u02/app/oracle/oradata/orcl/redo/redo03.log' ; Database
altered. SQL>
alter
database open ; Database
altered. SQL>
|
4. 检查是否成功
1
2
3
4
5
6
7
8
9
|
SQL>
select
member from
v$logfile; MEMBER -------------------------------------------------------------------------------- /u02/app/oracle/oradata/orcl/redo/redo03.log /u02/app/oracle/oradata/orcl/redo/redo02.log /u02/app/oracle/oradata/orcl/redo/redo01.log SQL>
|