Oracle 12cRAC移动MGMTDB数据库数据文件方法(一)

2015-01-22 21:52:54 · 作者: · 浏览: 33

在之前的Blog里介绍了Oracle12c RAC 中的MGMTDB的概念,参考:

?

Oracle 12cRAC MGMTDB 说明

http://www.2cto.com/database/201412/359252.html

?

而在默认情况下,MGMTDB 的数据文件是存放在OCR voting disk的磁盘组里的,为了节省OCR 磁盘组空间,我们也可以把MGMTDB 转移走。

?

当然,这里的移动位置,也是从一个共享位置移动到另一个共享位置。

?

具体操作如下。

?

?

1 停止并禁用ora.crf 资源

?

这里的ora.crf就是CHM。

?

在所有节点使用root用户执行如下命令:

?

[root@rac1 ~]# crsctlstop res ora.crf -init

CRS-2673: Attempting to stop 'ora.crf' on'rac1'

CRS-2677: Stop of 'ora.crf' on 'rac1'succeeded



[root@rac1 ~]# crsctlmodify res ora.crf -attr ENABLED=0 -init

[root@rac1 ~]#



[root@rac2 ~]# crsctl stop res ora.crf-init

CRS-2673: Attempting to stop 'ora.crf' on'rac2'

CRS-2677: Stop of 'ora.crf' on 'rac2'succeeded



[root@rac2 ~]# crsctl modify res ora.crf-attr ENABLED=0 -init

[root@rac2 ~]#

注意:ora.mgmtlsnr 和 ora.mgmtdb资源不能停,否则DBCA 时会报错。

?

?

2 执行DBCA 删除management database

?

?

--查看MGMTDB的运行节点:

[root@rac1 ~]# srvctl status mgmtdb

Database is enabled

Instance -MGMTDB is running on node rac2

?

这里显示在节点2上运行,那么在节点2上,用grid用户,执行dbca 命令,删除MGMTDB。

?

[grid@rac2 ~]$ dbca -silent-deleteDatabase -sourceDB -MGMTDB

Connecting to database

4% complete

9% complete

14% complete

19% complete

23% complete

28% complete

47% complete

Updating networkconfiguration files

48% complete

52% complete

Deleting instance anddatafiles

76% complete

100% complete

Look at the log file"/u01/gridbase/cfgtoollogs/dbca/_mgmtdb.log" for further details.

[grid@rac2 ~]$


注意:

如果是使用DBCA 手工创建的MGMTDB,则可能出现不能删除的情况,具体处理过程可以参考MOS: 1631336.1。

?

?

3 重建MGMTDB的CDB

1.1 12.1.0.1 执行如下命令

?

用grid用户,在任意节点,执行如下命令,重建CDB。

$ /bin/dbca -silent-createDatabase -templateName MGMTSeed_Database.dbc -sid -MGMTDB -gdbName_mgmtdb -storageType ASM -diskGroupName <+NEW_DG> -datafileJarLocation/assistants/dbca/templates -characterset AL32UTF8-autoGeneratePasswords -oui_internal

注意:

这里新的磁盘组,建议compatible.asm和 compatible.rdbms 属性都设置为12.1。

?

上面的命令使用的是磁盘组,如果是使用共享的NFS/CFS, 则使用如下命令:

/bin/dbca -silent-createDatabase -templateName MGMTSeed_Database.dbc -sid -MGMTDB -gdbName_mgmtdb -storageType FS -datafileDestination -datafileJarLocation /assistants/dbca/templates-characterset AL32UTF8 -autoGeneratePasswords -oui_internal

?

我们这里数据库版本是12.1.0.1,并且使用的是磁盘组,所以执行第一个命令:

[grid@rac1 /]$ dbca -silent -createDatabase-templateName MGMTSeed_Database.dbc -sid -MGMTDB -gdbName _mgmtdb -storageTypeASM -diskGroupName OCR -datafileJarLocation/u01/gridsoft/12.1.0/assistants/dbca/templates -characterset AL32UTF8-autoGeneratePasswords -oui_internal

Copying database files

1% complete

3% complete

10% complete

17% complete

24% complete

31% complete

35% complete

Creating and starting Oracle instance

37% complete

42% complete

47% complete

52% complete

53% complete

56% complete

58% complete

Registering database with Oracle GridInfrastructure

64% complete

Completing Database Creation

68% complete

78% complete

89% complete

100% complete

Look at the log file"/u01/gridbase/cfgtoollogs/dbca/_mgmtdb/_mgmtdb0.log" for furtherdetails.

[grid@rac1 /]$


1.2 12.1.0.2 执行如下命令

?

在任意节点,用grid用户执行如下命令:

--ASM 磁盘组:

$ /bin/dbca -silent-createDatabase -sid -M