首页 > Linux操作系统 > Linux操作系统 > Oracle asm配置
ASM 不是一个通用的文件系统,并只能用于 Oracle 数据文件、重做日志以及控制文件。ASM 中的文件既可以由数据库自动创建和命名(通过使用 Oracle 管理文件特性),也可以由 DBA 手动创建和命名。由于操作系统无法访问 ASM 中存储的文件,因此对使用 ASM 文件的数据库执行备份和恢复操作的唯一途径就是通过恢复管理器 (RMAN)。
ASM 作为单独的 Oracle 实例实施,只有它在运行时其他数据库才能访问它。在 Linux 上,只有运行 OCSSD 服务(由 Oracle 通用安装程序默认安装)才能使用 ASM。ASM 需要的内存不多:对大多数系统,只需 64 MB。
大体流程:下载相应版本的安装包或源文件->安装->配置->启动->创建磁盘->DBCA创建数据库
下载 ASM程序包或源文件
在 Linux 平台上,ASM 可以使用原始设备,或通过 ASMLib 接口管理的设备。出于易于使用和性能方面的原因,Oracle 建议在原始设备上使用 ASMLib。ASMLib 现在可以从 OTN 免费下载。本部分逐步讲解使用 ASMLib 配置一个简单 ASM 实例和构建一个使用 ASM 进行磁盘存储的数据库的全过程。
确定所需的 ASMLib 版本
ASMLib 以三个 Linux 程序包组成的程序包集提供:
每个 Linux 发行套件都有其自己的 ASMLib 程序包集。在每个发行套件中,每个内核版本都有一个相应的 oracleasm 程序包。以下部分介绍如何确定所需的程序包集。
首先,以 root 用户身份登录并运行以下命令来确定所使用的内核:
uname -rm 例如: # uname -rm 2.4.9-e.27smp i686
该示例表明,这是一个使用 Intel i686 CPU 的 SMP(多处理器)系统的 2.4.9 内核。
使用此信息在 OTN 上查找相应的 ASMLib 程序包:
http://www.oracle.com/technology/software/tech/linux/asmlib/rhel4.html
安装 ASMLib
接下来,通过以 root 用户身份执行以下命令来安装程序包:
rpm -ivh oracleasm-kernel_version-asmlib_version.cpu_type.rpm \ oracleasmlib-asmlib_version.cpu_type.rpm \ oracleasm-support-asmlib_version.cpu_type.rpm 例如: # rpm -ivh \ > oracleasm-2.4.9-e-smp-1.0.0-1.i686.rpm \ > oracleasmlib-1.0.0-1.i386.rpm \ > oracleasm-support-1.0.0-1.i386.rpm Preparing... #################################### [100%] 1:oracleasm-support #################################### [ 33%] 2:oracleasm-2.4.9-e-smp #################################### [ 66%] Linking module oracleasm.o into the module path [ OK ] 3:oracleasmlib #################################### [100%]
配置 ASMLib
使用 ASMLib 之前,必须运行配置脚本进行一些简单配置。以 root 用户身份运行以下命令,并响应如下示例中所显示的提示。
# /etc/init.d/oracleasm configure
Configuring the Oracle ASM library driver.
This will configure the on-boot properties of the Oracle ASM library
driver.The following questions will determine whether the driver is
loaded on boot and what permissions it will have.The current values
will be shown in brackets ('[]').Hitting without typing an
answer will keep that current value.Ctrl-C will abort.
Default user to own the driver interface []:oracle
Default group to own the driver interface []:dba
Start Oracle ASM library driver on boot (y/n) [n]:y
Fix permissions of Oracle ASM disks on boot (y/n) [y]:y
Writing Oracle ASM library driver configuration [ OK ]
Creating /dev/oracleasm mount point [ OK ]
Loading module "oracleasm" [ OK ]
Mounting ASMlib driver filesystem [ OK ]
Scanning system for ASM disks [ OK ] 根据提示,依次输入:oracle/dba/y/y,这样就会在系统下次启动时自动加载ASMLib驱动程序。
启动ASMLib配置
现在,如下所示启用 ASMLib 驱动程序。
# /etc/init.d/oracleasm enable Writing Oracle ASM library driver configuration [ OK ] Scanning system for ASM disks
使用ASM 进行磁盘 配置接下来,告诉 ASM 驱动程序您要使用的磁盘。
请注意,这些磁盘是不包含任何内容(甚至不包含分区)的空磁盘。可以将磁盘分区用于 ASM,但建议您不要这样做。
通过以 root 用户身份运行以下命令来标记由 ASMLib 使用的磁盘:
/etc/init.d/oracleasm createdisk DISK_NAME device_name(提示:DISK_NAME 应由大写字母组成。当前版本有一个错误,即如果使用小写字母,ASM 实例将无法识别磁盘。)
例如: # /etc/init.d/oracleasm createdisk VOL1 /dev/sdb Marking disk "/dev/sdb" as an ASM disk [ OK ] # /etc/init.d/oracleasm createdisk VOL2 /dev/sdc Marking disk "/dev/sdc" as an ASM disk [ OK ] # /etc/init.d/oracleasm createdisk VOL3 /dev/sdd Marking disk "/dev/sdd" as an ASM disk [ OK ] # /etc/init.d/oracleasm createdisk VOL4 /dev/sdf Marking disk "/dev/sdf" as an ASM disk [ OK ] # /etc/init.d/oracleasm createdisk VOL5 /dev/sdg Marking disk "/dev/sdg" as an ASM disk [ OK ] # /etc/init.d/oracleasm createdisk VOL6 /dev/sdh Marking disk "/dev/sdh" as an ASM disk [ OK ]以下示例演示了如何列出标记为由 ASMLib 使用的所有磁盘。
# /etc/init.d/oracleasm listdisks VOL1 VOL2 VOL3 VOL4 VOL5 VOL6
关于/etc/init.d/oracleasm命令的详细参数,可以使用-h或--help参数来查看。
至此,所有的关于ASM的配置都已经完成,下面,您便可以创建一个 ASM 实例,并构建一个使用 ASM 进行磁盘存储的数据库。最容易的方法就是使用数据库配置助手 (DBCA) 来完成此操作。
启动DBCA创建数据库
以 oracle 身份登录并启动 DBCA:
$ dbca
|
|
![]() |
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/9665688/viewspace-608040/ ,如需转载,请注明出处,否则将追究法律责任。