1.OCR_VOTE磁盘组更换
添加ASM磁盘,使用asmca创建OCR_NEW磁盘组
SYS@ +ASM1>select group_number,name,type,state,total_mb,free_mb,USABLE_FILE_MB from v$asm_diskgroup;
GROUP_NUMBER NAME TYPE STATE TOTAL_MB FREE_MB USABLE_FILE_MB
1 DATA NORMAL MOUNTED 22527 18173 3964
2 FRA NORMAL MOUNTED 12299 11629 5814
3 OCR_VOTE NORMAL MOUNTED 3105 2275 620
4 OCR_NEW NORMAL MOUNTED 3105 2181 573
5 DATA_NEW NORMAL MOUNTED 13122 12837 4163
6 FRA_NEW NORMAL MOUNTED 9246 8961 2939
6 rows selected.
替换OCR
[grid@A99 ~]$ ocrcheck
Status of Oracle Cluster Registry is as follows :
Version : 3
Total space (kbytes) : 262120
Used space (kbytes) : 3116
Available space (kbytes) : 259004
ID : 1493351339
Device/File Name : +OCR_VOTE
Device/File integrity check succeeded
Device/File not configured
Device/File not configured
Device/File not configured
Device/File not configured
Cluster registry integrity check succeeded
Logical corruption check bypassed due to non-privileged user
[root@A99 bin]# /u01/11.2.0/grid/bin/ocrconfig -add +OCR_NEW
[root@A99 bin]# /u01/11.2.0/grid/bin/ocrconfig -replace +OCR_VOTE -replacement +OCR_NEW
PROT-29: The Oracle Cluster Registry location is already configured
[grid@A99 ~]$ ocrcheck
Status of Oracle Cluster Registry is as follows :
Version : 3
Total space (kbytes) : 262120
Used space (kbytes) : 3148
Available space (kbytes) : 258972
ID : 1493351339
Device/File Name : +OCR_VOTE
Device/File integrity check succeeded
Device/File Name : +OCR_NEW
Device/File integrity check succeeded
Device/File not configured
Device/File not configured
Device/File not configured
Cluster registry integrity check succeeded
Logical corruption check bypassed due to non-privileged user
查看ocr.loc
[grid@A99 ~]$ more /etc/oracle/ocr.loc
#Device/file getting replaced by device +OCR_NEW
ocrconfig_loc=+OCR_VOTE
ocrmirrorconfig_loc=+OCR_NEW
local_only=false
迁移votdisk
[grid@A99 ~]$ crsctl query css votedisk
STATE File Universal Id File Name Disk group
- ONLINE 24e7d0ed3a0d4fbcbf87d0c7167976f8 (/dev/raw/raw31) [OCR_VOTE]
- ONLINE 4afaceb499fb4f1dbf0b0ef36485768c (/dev/raw/raw32) [OCR_VOTE]
- ONLINE 56e0a9678ea34f86bfaf0206e93da968 (/dev/raw/raw33) [OCR_VOTE]
Located 3 voting disk(s).
[grid@A99 ~]$ crsctl replace votedisk +OCR_NEW
Successful addition of voting disk 0a4970911a3b4f1bbf3c52b55021e825.
Successful addition of voting disk 99555eba08694f46bf4b2c949e219e20.
Successful addition of voting disk a012b955ccdd4f40bf31c0b4c44712a5.
Successful deletion of voting disk 24e7d0ed3a0d4fbcbf87d0c7167976f8.
Successful deletion of voting disk 4afaceb499fb4f1dbf0b0ef36485768c.
Successful deletion of voting disk 56e0a9678ea34f86bfaf0206e93da968.
Successfully replaced voting disk group with +OCR_NEW.
CRS-4266: Voting file(s) successfully replaced
[grid@A99 ~]$ crsctl query css votedisk
STATE File Universal Id File Name Disk group
- ONLINE 0a4970911a3b4f1bbf3c52b55021e825 (/dev/raw/raw1) [OCR_NEW]
- ONLINE 99555eba08694f46bf4b2c949e219e20 (/dev/raw/raw2) [OCR_NEW]
- ONLINE a012b955ccdd4f40bf31c0b4c44712a5 (/dev/raw/raw3) [OCR_NEW]
Located 3 voting disk(s).
重建ASM spfile
SYS@ +ASM1>show parameter spfile;
NAME TYPE VALUE
spfile string +OCR_VOTE/a-cluster/asmparamet
erfile/registry.253.1017683887
SYS@ +ASM1>create pfile=’/u01/11.2.0/grid/dbs/asmpfile.ora’ from spfile;
File created.
SYS@ +ASM1> create spfile=’+OCR_NEW’ from pfile=’/u01/11.2.0/grid/dbs/asmpfile.ora’;
File created.
重启crs
[root@A99 bin]# cd /u01/11.2.0/grid/bin/
[root@A99 bin]# ./crsctl stop cluster -all
[root@A99 bin]# ./crsctl start cluster -all
重新登陆ASM查看
SYS@ +ASM1>show parameter spfile;
NAME TYPE VALUE
spfile string +OCR_NEW/a-cluster/asmparamete
rfile/registry.253.1022254351
删除旧的OCR
[root@A99 bin]# ./ocrconfig -delete +OCR_VOTING
PROT-34: The Oracle Cluster Registry location to be deleted is not configured
SYS@ +ASM2>alter diskgroup OCR_VOTE dismount force;
Diskgroup altered.
删除磁盘组+OCR_VOE/这里要注意一下,先要在节点2 上先执行alter diskgroup OCR_VOTE dismount,然后再节点1上执行:
drop diskgroup OCR_VOTE including contents; 还有执行以上的命令要用sysasm 用户登陆,不然没权限执行,具体如下:
节点2:
SYS@ +ASM2>select group_number,name,type,state,total_mb,free_mb,USABLE_FILE_MB from v$asm_diskgroup;
GROUP_NUMBER NAME TYPE STATE TOTAL_MB FREE_MB USABLE_FILE_MB
1 DATA_NEW NORMAL MOUNTED 13122 12837 4163
2 DATA NORMAL MOUNTED 22527 18173 3964
3 FRA_NEW NORMAL MOUNTED 9246 8961 2939
4 FRA NORMAL MOUNTED 12299 11629 5814
5 OCR_NEW NORMAL MOUNTED 3105 2179 572
0 OCR_VOTE DISMOUNTED 0 0 0
6 rows selected.
节点1:
SYS@ +ASM1>drop diskgroup OCR_VOTE including contents;
Diskgroup dropped.
SYS@ +ASM1>select group_number,name,type,state,total_mb,free_mb,USABLE_FILE_MB from v$asm_diskgroup;
GROUP_NUMBER NAME TYPE STATE TOTAL_MB FREE_MB USABLE_FILE_MB
1 DATA_NEW NORMAL MOUNTED 13122 12837 4163
2 DATA NORMAL MOUNTED 22527 18173 3964
3 FRA_NEW NORMAL MOUNTED 9246 8961 2939
4 FRA NORMAL MOUNTED 12299 11629 5814
5 OCR_NEW NORMAL MOUNTED 3105 2179 572
1.ASM DATA磁盘组和FRA磁盘组更换
了解原系统信息
SQL> archive log list;
SQL> show parameter spfile;
SQL> show parameter control_files;
备控制文件
SQL> alter database backup controlfile to ‘/tmp/controfile1’;
–查看当前数据文件位置
SQL> select name from v$datafile
–查看OMF相关参数
SQL> show parameter db_create_file_dest;
SQL> show parameter db_recovery_file_dest_size;
SQL> show parameter db_recovery_file_dest;
SQL> show parameter log_archive_dest_1;
–修改控制文件位置到ASM
节点1:
SQL> alter system set control_files=’+DATA_NEW’ scope=spfile;
SQL> alter system set db_create_file_dest=’+DATA_NEW’;
节点2:
SQL> alter system set control_files=’+DATA_NEW’ scope=spfile;
SQL> alter system set db_create_file_dest=’+DATA_NEW’;
–切换到RMAN操作
节点1:
[oracle@a99]$ rman target /
RMAN> shutdown immediate;
节点2:
[oracle@a88]$ rman target /
RMAN> shutdown immediate;
–启动到nomount状态
节点1:
RMAN> startup nomount;
–还原备份的控制文件
节点1:
RMAN> restore controlfile from ‘/tmp/controfile1’;
RMAN> alter database mount;
节点:1
–备份数据文件副本到ASM磁盘组DATA_NEW
RMAN> backup as copy database format ‘+DATA_NEW’;
–切换数据文件到ASM
RMAN> switch database to copy;
–恢复数据库
RMAN> recover database;
–打开数据库
RMAN> alter database open resetlogs;
–迁移REDO到ASM
SYS@ prod1>select group#,sequence#,status from v$log;
GROUP# SEQUENCE# STATUS
1 1 CURRENT
2 0 UNUSED
3 1 CURRENT
4 0 UNUSED
添加日志组
SYS@ prod1>alter database add logfile thread 1 group 5 ‘+DATA_NEW’ size 50m;
Database altered.
SYS@ prod1>alter database add logfile thread 1 group 6 ‘+DATA_NEW’ size 50m;
Database altered.
SYS@ prod1>alter database add logfile thread 2 group 7 ‘+DATA_NEW’ size 50m;
Database altered.
SYS@ prod1>alter database add logfile thread 2 group 8 ‘+DATA_NEW’ size 50m;
Database altered.
SYS@ prod1>select group#,sequence#,thread#,status,bytes/1024/1024 m from v$log;
GROUP# SEQUENCE# THREAD# STATUS M
1 1 1 CURRENT 50
2 0 1 UNUSED 50
3 1 2 CURRENT 50
4 0 2 UNUSED 50
5 0 1 UNUSED 50
6 0 1 UNUSED 50
7 0 2 UNUSED 50
8 0 2 UNUSED 50
8 rows selected.
切换current日志组 并删除
SYS@ prod1>alter database drop logfile group 2;
Database altered.
SYS@ prod1>alter database drop logfile group 4;
Database altered.
节点1:
alter system switch logfile;
alter system checkpoint;
节点2:
alter system switch logfile;
alter system checkpoint;
SYS@ prod2>select group#,sequence#,thread#,status,bytes/1024/1024 m from v$log;
GROUP# SEQUENCE# THREAD# STATUS M
1 1 1 INACTIVE 50
3 1 2 INACTIVE 50
5 2 1 CURRENT 50
6 0 1 UNUSED 50
7 2 2 CURRENT 50
8 0 2 UNUSED 50
6 rows selected.
SYS@ prod1>alter database drop logfile group 1;
Database altered.
SYS@ prod1>alter database drop logfile group 3;
Database altered.
SYS@ prod1>select group#,member from v$logfile;
GROUP# MEMBER
5 +DATA_NEW/prod/onlinelog/group_5.264.1022271979
6 +DATA_NEW/prod/onlinelog/group_6.265.1022271991
7 +DATA_NEW/prod/onlinelog/group_7.266.1022271999
8 +DATA_NEW/prod/onlinelog/group_8.267.1022272005
迁移TEMP文件
SYS@ prod1>select tablespace_name,file_name,bytes/1024/1024 file_size,autoextensible from dba_temp_files;
SYS@ prod1>alter tablespace temp drop tempfile ‘+DATA/prod/tempfile/temp.263.1018180795’;
Tablespace altered.
迁移spfile到ASM
SYS@ prod1>show parameter spfile;
NAME TYPE VALUE
spfile string +DATA/prod/spfileprod.ora
SYS@ prod1> create pfile=’/tmp/pfile2’ from spfile;
File created.
SYS@ prod1>create spfile=’+DATA_NEW’ from pfile=’/tmp/pfile2’;
File created.
归档日志迁移到ASM
把归档日志放在+DATA_NEW组上
更改路径参数
SYS@ prod1> alter system set db_recovery_file_dest=’+DATA_NEW’;
SYS@ prod1> alter system set log_archive_dest_1=‘location=+DATA_NEW’;
清理DATA和FRA磁盘组
节点2:
SYS@ +ASM2>alter diskgroup DATA dismount;
Diskgroup altered.
SYS@ +ASM2>alter diskgroup FRA dismount;
Diskgroup altered.
SYS@ +ASM2>select group_number,name,type,state,total_mb,free_mb,USABLE_FILE_MB from v$asm_diskgroup;
GROUP_NUMBER NAME TYPE STATE TOTAL_MB FREE_MB USABLE_FILE_MB
1 DATA_NEW NORMAL MOUNTED 13122 8539 2014
0 FRA DISMOUNTED 0 0 0
3 FRA_NEW NORMAL MOUNTED 9246 8961 2939
0 DATA DISMOUNTED 0 0 0
5 OCR_NEW NORMAL MOUNTED 3105 2179 572
节点1:
SYS@ +ASM1>drop diskgroup DATA including contents;
Diskgroup dropped.
SYS@ +ASM1>drop diskgroup FRAAincluding contents;
Diskgroup dropped.
SYS@ +ASM1>select group_number,name,type,state,total_mb,free_mb,USABLE_FILE_MB from v$asm_diskgroup;
GROUP_NUMBER NAME TYPE STATE TOTAL_MB FREE_MB USABLE_FILE_MB
1 DATA_NEW NORMAL MOUNTED 13122 8539 2014
3 FRA_NEW NORMAL MOUNTED 9246 8961 2939
5 OCR_NEW NORMAL MOUNTED 3105 2179 572