在 Oracle 数据库 10g 第 1 版中推出的 Oracle 自动存储治理 (ASM) 是一个嵌入 Oracle 内核的专用集群文件系统,有了它,就不再需要第三方的卷治理器和文件系统了。
虽然提供了许多具体信息,但您只要知道一点就足够了:Oracle ASM 在磁盘间完成数据的条带化和镜像,并执行联机磁盘配置和动态重平衡等。它能从根本上解决 DBA 会碰到的许多存储治理问题。
在 Oracle 数据库 10g 第 1 版中,要求 Recovery Manager (RMAN) 将现有数据库转换为 Oracle ASM。而在第 2 版中,因为引入了 Oracle EnterPRise Manager 10g Database Control 中一个选项(命令行上的 bconsole),该过程得到了极大的简化。在本技术说明中,我将介绍如何使用该方法将现有数据库转换为 Oracle ASM。
为了便于说明,假定现有数据库在一个 ext3 文件系统上具有如下布局。 SQL> select name from v$datafile;
NAME
------------------------------------------------------------
/u01/app/oracle/oradata/test/system01.dbf
/u01/app/oracle/oradata/test/undotbs01.dbf
/u01/app/oracle/oradata/test/sysaux01.dbf
/u01/app/oracle/oradata/test/users01.dbf
首先,调用 dbconsole,以 SYS 用户登录,在出现的屏幕上单击 Administration 选项卡。
点击查看大图在 Change Database 部分下,单击“Migrate to ASM”。
点击查看大图接着,输入 SYS 用户的口令连接到该 ASM 实例。
点击查看大图然后,选择现有文件的位置和一个预先创建的 ASM 磁盘组(现有文件将添加到该磁盘组)。
点击查看大图为了执行该任务,创建了一个作业。现在为该作业输入一合适的描述。
点击查看大图在下一个屏幕中,单击“Tablespaces and Files to be Migrated”部分……
点击查看大图并确认要移植到 ASM 的文件。假如没有什么要更改的了就单击“Submit”。
点击查看大图假如提交成功,您将收到一个确认屏幕。
点击查看大图单击上面的“View Status”按钮确认将该作业编入计O衷冢祷厣弦桓銎聊唬?ldquo;OK”。
点击查看大图
该作业执行以下任务:
关闭数据库
挂载数据库
将文件复制到 ASM 磁盘组,并在控制文件中重新命名这些文件
删除临时文件
打开数据库
在 ASM 磁盘组添加临时文件
删除日志文件,并在具有两个成员的 ASM 磁盘组中创建日志文件,一次一个 您可以在浏览器中使用刷新选项不断检查该作业的状态。当该作业完成时,其状态更新为“SUCceeded”。
点击查看大图接着,检查数据库的 alert.log 文件,确认已将文件移植到 ASM。
SQL> select name from v$datafile;
NAME
--------------------------------------------------------------------------------
+DATA_TEST/test/datafile/system.259.563293767
+DATA_TEST/test/datafile/undotbs1.260.563293767
+DATA_TEST/test/datafile/sysaux.262.563293767
+DATA_TEST/test/datafile/users.261.563293767
SQL> select name from v$controlfile;
NAME
--------------------------------------------------------------------------------
+DATA_TEST/test/controlfile/backup.256.563293701
+DATA_TEST/test/controlfile/backup.257.563293703
SQL> select member from v$logfile;
MEMBER
--------------------------------------------------------------------------------
+DATA_TEST/test/onlinelog/group_1.268.563293929
+DATA_TEST/test/onlinelog/group_2.270.563293969
+DATA_TEST/test/onlinelog/group_4.266.563293915
+DATA_TEST/test/onlinelog/group_4.267.563293921
+DATA_TEST/test/onlinelog/group_1.269.563293935
+DATA_TEST/test/onlinelog/group_2.271.563293973
6 rows selected.
恭喜,您已成功将您的数据库移植到 Oracle ASM!