Chinaunix首页 | 论坛 | 博客
  • 博客访问: 103682993
  • 博文数量: 19283
  • 博客积分: 9968
  • 博客等级: 上将
  • 技术积分: 196062
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-07 14:28
文章分类

全部博文(19283)

文章存档

2011年(1)

2009年(125)

2008年(19094)

2007年(63)

分类: Oracle

2008-04-14 16:51:51

使用 Oracle Enterprise Manager 10g Database Control 移植到 Oracle ASM

作者:Fairlie Rego,SingTel Optus Pty Ltd 高级 Oracle 顾问

来源:
 

在 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 选项卡。

图 1

在 Change Database 部分下,单击“Migrate to ASM”。

图 2

接着,输入 SYS 用户的口令连接到该 ASM 实例。

图 3

然后,选择现有文件的位置和一个预先创建的 ASM 磁盘组(现有文件将添加到该磁盘组)。

图 4

为了执行该任务,创建了一个作业。现在为该作业输入一合适的描述。

图 5

在下一个屏幕中,单击“Tablespaces and Files to be Migrated”部分……

图 6

并确认要移植到 ASM 的文件。如果没有什么要更改的了就单击“Submit”。

图 7

如果提交成功,您将收到一个确认屏幕。

图 8

单击上面的“View Status”按钮确认将该作业编入计划。现在,返回上一个屏幕,单击“OK”。

图 9

该作业执行以下任务:

  • 关闭数据库
  • 挂载数据库
  • 将文件复制到 ASM 磁盘组,并在控制文件中重新命名这些文件
  • 删除临时文件
  • 打开数据库
  • 在 ASM 磁盘组添加临时文件
  • 删除日志文件,并在具有两个成员的 ASM 磁盘组中创建日志文件,一次一个
您可以在浏览器中使用刷新选项不断检查该作业的状态。当该作业完成时,其状态更新为“Succeeded”。

图 10

接着,检查数据库的 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!
阅读(337) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~