使用裸设备配置Oracle ASM实例一例
1.查看当前磁盘
[root@std u01]# fdisk -l Disk /dev/sda: 42.9 GB, bytes
heads, sectors/track, cylinders
Units = cylinders of * = bytes Device Boot Start End Blocks Id System
/dev/sda1 * + Linux
/dev/sda2 Linux swap / Solaris Disk /dev/sdb: MB, bytes
heads, sectors/track, cylinders
Units = cylinders of * = bytes Device Boot Start End Blocks Id System Disk /dev/sdc: MB, bytes
heads, sectors/track, cylinders
Units = cylinders of * = bytes Device Boot Start End Blocks Id System Disk /dev/sdd: MB, bytes
heads, sectors/track, cylinders
Units = cylinders of * = bytes Device Boot Start End Blocks Id System Disk /dev/sde: MB, bytes
heads, sectors/track, cylinders
Units = cylinders of * = bytes Device Boot Start End Blocks Id System
从上面的输出可以看出我们有四快盘且都没有分区:
/dev/sdb
/dev/sdc
/dev/sdd
/dev/sde
2.对磁盘进行分区
[root@std u01]# fdisk /dev/sdb Command (m for help): n
Command action
e extended
p primary partition (-)
p
Partition number (-):
First cylinder (-, default ):
Using default value
Last cylinder or +size or +sizeM or +sizeK (-, default ):
Using default value Command (m for help): w
The partition table has been altered! Calling ioctl() to re-read partition table.
Syncing disks.
对其他磁盘执行同样的分区操作!
[root@std u01]# ll /dev/sd*
brw-r----- root disk , Jan : /dev/sda
brw-r----- root disk , Jan : /dev/sda1
brw-r----- root disk , Jan : /dev/sda2
brw-r----- root disk , Jan : /dev/sdb
brw-r----- root disk , Jan : /dev/sdb1
brw-r----- root disk , Jan : /dev/sdc
brw-r----- root disk , Jan : /dev/sdc1
brw-r----- root disk , Jan : /dev/sdd
brw-r----- root disk , Jan : /dev/sdd1
brw-r----- root disk , Jan : /dev/sde
brw-r----- root disk , Jan : /dev/sde1
3.绑定裸设备
[root@std u01]# vi /etc/sysconfig/rawdevices
[root@std u01]# cat /etc/sysconfig/rawdevices
# raw device bindings
# format: <rawdev> <major> <minor>
# <rawdev> <blockdev>
# example: /dev/raw/raw1 /dev/sda1
# /dev/raw/raw2
/dev/raw/raw1 /dev/sdb1
/dev/raw/raw2 /dev/sdc1
/dev/raw/raw3 /dev/sdd1
/dev/raw/raw4 /dev/sde1
[root@std u01]# service rawdevices restart
Assigning devices:
/dev/raw/raw1 --> /dev/sdb1
/dev/raw/raw1: bound to major , minor
/dev/raw/raw2 --> /dev/sdc1
/dev/raw/raw2: bound to major , minor
/dev/raw/raw3 --> /dev/sdd1
/dev/raw/raw3: bound to major , minor
/dev/raw/raw4 --> /dev/sde1
/dev/raw/raw4: bound to major , minor
done
[root@std u01]# raw -qa
/dev/raw/raw1: bound to major , minor
/dev/raw/raw2: bound to major , minor
/dev/raw/raw3: bound to major , minor
/dev/raw/raw4: bound to major , minor
3.更改裸设备的权限
[root@std u01]# cd /dev/raw
[root@std raw]# ll
total
crw------- root root , Jan : raw1
crw------- root root , Jan : raw2
crw------- root root , Jan : raw3
crw------- root root , Jan : raw4
[root@std raw]# chown oracle:dba raw*
[root@std raw]# ll
total
crw------- oracle dba , Jan : raw1
crw------- oracle dba , Jan : raw2
crw------- oracle dba , Jan : raw3
crw------- oracle dba , Jan : raw4
为方便我们把"chown oracle:dba raw*"写入/etc/rc.local
[root@std raw]# cat /etc/rc.local |grep chown
chown oracle:dba /dev/raw/raw[-]
[root@std raw]#
4.安装配置ASM驱动
[root@std u01]# uname -ra
Linux std 2.6.-.el5 # SMP Tue Mar :: EDT i686 i686 i386 GNU/Linux
[root@std u01]# ll oracleasm*
-rw-r--r-- root root Jul oracleasm-2.6.-.el5-2.0.-.el5.i686.rpm
-rw-r--r-- root root Jul oracleasm-2.6.-.el5debug-2.0.-.el5.i686.rpm
-rw-r--r-- root root Jul oracleasm-2.6.-.el5-debuginfo-2.0.-.el5.i686.rpm
-rw-r--r-- root root Jul oracleasm-2.6.-.el5PAE-2.0.-.el5.i686.rpm
-rw-r--r-- root root Jul oracleasm-2.6.-.el5xen-2.0.-.el5.i686.rpm
-rw-r--r-- root root Jul oracleasmlib-2.0.-.el5.i386.rpm
-rw-r--r-- root root Jul oracleasm-support-2.1.-.el5.i386.rpm [root@std u01]# rpm -ivh oracleasm* --这些包之前我们以安装过
warning: oracleasm-2.6.-.el5-2.0.-.el5.i686.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159
Preparing... ########################################### [%]
package oracleasm-support-2.1.-.el5.i386 is already installed
package oracleasm-2.6.-.el5xen-2.0.-.el5.i686 is already installed
package oracleasm-2.6.-.el5-2.0.-.el5.i686 is already installed
package oracleasm-2.6.-.el5debug-2.0.-.el5.i686 is already installed
package oracleasm-2.6.-.el5-debuginfo-2.0.-.el5.i686 is already installed
package oracleasm-2.6.-.el5PAE-2.0.-.el5.i686 is already installed
package oracleasmlib-2.0.-.el5.i386 is already installed
配置验证ASM驱动:
[root@std u01]# /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 <ENTER> 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 [ ]:oinstall
Start Oracle ASM library driver on boot (y/n) [y]:
Scan for Oracle ASM disks on boot (y/n) [y]:
Writing Oracle ASM library driver configuration: done
Initializing the Oracle ASMLib driver: [ OK ]
Scanning the system for Oracle ASMLib disks: [ OK ] [root@std u01]# lsmod |grep asm
oracleasm
5.初始化ASM参数
[root@std u01]# su - oracle
[oracle@std ~]$ cd $ORACLE_HOME/dbs
[oracle@std dbs]$ mkdir -p $ORACLE_BASE/admin/+ASM/{b,c,u}dump
[oracle@std dbs]$ touch init+ASM.ora
[oracle@std dbs]$ vi init+ASM.ora
[oracle@std dbs]$ cat init+ASM.ora
*.asm_diskstring='/dev/raw/raw*'
*.instance_type='asm'
*.large_pool_size=24M
*.remote_login_passwordfile='SHARED'
*.background_dump_dest='/u02/app/admin/+ASM/bdump'
*.core_dump_dest='/u02/app/admin/+ASM/cdump'
*.user_dump_dest='/u02/app/admin/+ASM/bdump'
[oracle@std dbs]$
6.为ASM实例创建密码文件
[oracle@std dbs]$ orapwd file=orapw+ASM password=oracle1
[oracle@std dbs]$
7.以root身份启动CSS进程
[oracle@std ~]# /u02/app/product/10.2./db_1/bin/localconfig add
/etc/oracle does not exist. Creating it now.
Successfully accumulated necessary OCR keys.
Creating OCR keys for user 'root', privgrp 'root'..
Operation successful.
Configuration for local CSS has been initialized
Adding to inittab
Startup will be queued to init within seconds.
Checking the status of new Oracle init process...
Expecting the CRS daemons to be up within seconds.
CSS is active on these nodes.
localhost
CSS is active on all nodes.
Oracle CSS service is installed and running under init(1M)
验证CSS进程是否启动;
[oracle@std dbs]$ crsctl check css
CSS appears healthy
[oracle@std dbs]$ crsctl check crs
CSS appears healthy
Cannot communicate with CRS
Cannot communicate with EVM
8.启动ASM实例
[oracle@std dbs]$ export ORACLE_SID=+ASM
[oracle@std dbs]$ sqlplus '/as sysdba' SQL*Plus: Release 10.2.0.4. - Production on Fri Jan :: Copyright (c) , , Oracle. All Rights Reserved. Connected to an idle instance. SQL> startup
ASM instance started Total System Global Area bytes
Fixed Size bytes
Variable Size bytes
ASM Cache bytes
ORA-: no diskgroups mounted
可以看到我们的ASM实例已经正常启动,最后报出ORA-15110错误说明没有挂载任何磁盘组,
因为此时我们还没有创建任何磁盘组,所以忽略这个错误。
9.创建spfile
使用spfile以后,在节下来的我们创建磁盘组时,ASM_DISKGROUPS这个参数会被自动更新。
而如果使用pfile,这个参数值不会自动更新。
SQL> create spfile from pfile; File created. SQL> shutdown abort
ASM instance shutdown
SQL> startup
ASM instance started Total System Global Area bytes
Fixed Size bytes
Variable Size bytes
ASM Cache bytes
ORA-: no diskgroups mounted SQL> show parameter spfile NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
spfile string /u02/app/product/10.2./db_1/d
bs/spfile+ASM.ora
10.查看磁盘及创建磁盘组
--查看磁盘asm_diskstring参数指定的磁盘
SQL> select path from v$asm_disk; PATH
--------------------------------------------------------------------------------
/dev/raw/raw4
/dev/raw/raw3
/dev/raw/raw2
/dev/raw/raw1
--创建磁盘组
CREATE DISKGROUP diskgroup_name
[ { HIGH | NORMAL | EXTERNAL } REDUNDANCY ]
[ FAILGROUP failgroup_name ]
DISK [ NAME disk_name ] [ SIZE size_clause ] [ FORCE | NOFORCE ] ...;
注意:冗余度有三个选择:HIGH(高度冗余>三路)、NORMAL(标准冗余--双路)和EXTERNAL(外部存储冗余)
SQL> create diskgroup DATA external redundancy
disk '/dev/raw/raw1','/dev/raw/raw2'; Diskgroup created. SQL> create diskgroup FLA external redundancy
disk '/dev/raw/raw3','/dev/raw/raw4'; Diskgroup created. SQL> select GROUP_NUMBER,NAME,TOTAL_MB,FREE_MB from v$asm_diskgroup; GROUP_NUMBER NAME TOTAL_MB FREE_MB
------------ ------------------------------ ---------- ----------
DATA
FLA
11.把ASM实例注册到监听中
创建好ASM实例后,一般会系统会把ASM实例自动注册到监听中,如果没有自动注册,可以手动注册。
[oracle@std bdump]$ export ORACLE_SID=+ASM
[oracle@std bdump]$ sqlplus '/as sysdba' SQL*Plus: Release 10.2.0.4. - Production on Fri Jan :: Copyright (c) , , Oracle. All Rights Reserved. Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.4. - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options SQL> alter system register; System altered.
[oracle@std ~]$ lsnrctl status LSNRCTL for Linux: Version 10.2.0.4. - Production on -JAN- :: Copyright (c) , , Oracle. All rights reserved. Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for Linux: Version 10.2.0.4. - Production
Start Date -JAN- ::
Uptime days hr. min. sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Log File /u02/app/product/10.2./db_1/network/log/listener.log
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=std)(PORT=)))
Services Summary...
Service "+ASM" has instance(s).
Instance "+ASM", status BLOCKED, has handler(s) for this service...
Service "+ASM_XPT" has instance(s).
Instance "+ASM", status BLOCKED, has handler(s) for this service...
The command completed successfully
12.远程访问ASM实例
要想从远程访问ASM实例,TNS配置需加上UR属性
asm=
(DESCRIPTION=
(ADDRESS= (PROTOCOL=tcp)(HOST=192.168.1.172)(PORT=))
(CONNECT_DATA=
(SERVICE_NAME=+ASM)
(UR=A)))
C:\Users\Administrator>sqlplus sys/oracle1@asm as sysdba SQL*Plus: Release 10.2.0.1. - Production on 星期五 1月 :: Copyright (c) , , Oracle. All rights reserved. 连接到:
Oracle Database 10g Enterprise Edition Release 10.2.0.4. - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options SQL> select group_number,name from v$asm_diskgroup; GROUP_NUMBER NAME
------------ ------------------------------------------------------------
DATA
FLA

使用裸设备配置Oracle ASM实例一例的更多相关文章
- (转)设置了RemoveIPC=yes 的RHEL7.2 会crash掉Oracle asm 实例和Oracle database实例
设置了RemoveIPC=yes 的RHEL7.2 会crash掉Oracle asm 实例和Oracle database实例,该问题也会在使用Shared Memory Segment (SHM ...
- 转://Window下安装Oracle ASM单实例数据库
之前做的Oracle ASM实验都是基于Linux或者Unix操作系统的,最近想试试如何在Windows环境下使用Oracle ASM.本文介绍如何在windows下创建裸设备,并创建ASM磁盘组以及 ...
- [置顶] Oracle 11g R2 ASM:了解 Oracle ASM 基本概念
About Oracle ASM Instances About Oracle ASM Disk Groups About Mirroring and Failure Groups About Ora ...
- oracle数据库启动报错,不能启动ASM实例
数据库rac启动时报错,日志例如以下,后来使用 Sat Jun 7 06:02:11 2014 GATHER_STATS_JOB encountered errors. Check the tra ...
- 创建ASM实例及ASM数据库
--======================== -- 创建ASM实例及ASM数据库 --======================== 一.ASM相关概念 1.什么是ASM(Auto Stor ...
- 创建ASM实例及ASM数据库(转载)
--======================== -- 创建ASM实例及ASM数据库 --======================== 一.ASM相关概念 1.什么是ASM(Auto Stor ...
- oracle asm 概念
automated storage management ,即自动存储管理,简称asm .. 在oracle 10g 这个版本之前,管理一个大型数据库成千上万的数据文件对数据库管理员来说是一个既无技术 ...
- oracle11g rac asm 实例内存修改
ASM实例内存修改 memory_max_target(它为静态参数,修改完成后需要重启实例) memory_target(它为动态参数,不需要重启实例) SQL> select name,is ...
- [置顶] Oracle GoldenGate 系列:使用 Oracle ASM API DBLOGREADER 时遇 ora-01031 错误
今天在自己新搭建的 Oracle ACFS 文件系统上测试 GoldenGate ,启动 extract 进程报如下错误: 2013-08-27 14:58:39 ERROR OGG-00446 ...
随机推荐
- FastDFS简介
一.FastDFS概述: FastDFS是一个开源的轻量级分布式文件系统,他对文件进行管理,功能包括:文件存储.文件同步.文件访问(文件上传.下载)等,解决了大容量存储和负载均衡的问题,高度追求高性能 ...
- Memcache升级版:CouchBase的安装配置与使用说明
Memcache基本上已经是开发的标配了,但是对于Memcache集群,很多线上部署仍然是很单薄的. 几个存在的问题:不健壮.数据不安全.配置变更可能导致存取异常.后备数据的一致性 鉴于存在以上问题, ...
- 【JDK】电脑上安装多个JDK ,修改JAVA_HOME后没有作用
电脑上装了 C:\Program Files\Java\jdk1.6.0_43 C:\Program Files\Java\jdk1.7.0_80 C:\Program Files\ ...
- canvas之2D上下文
1.填充和描边 (1)fillStyle (2)strokeStyle 2.绘制矩形 (1)fillRect() (2)strokeRect() (3)clearRect() :清除画布上的矩形区 ...
- DSP using MATLAB 示例Example3.8
代码: x = rand(1,11); n = 0:10; k = 0:500; w = (pi/500)*k; % [0,pi] axis divided into 501 points. X = ...
- express-19 路由2
组织路由 在主应用程序文件中定义所有路由太笨重了.那样不仅会导致那个文件一直增长,还不利于功能的分离,因为那个文件里已经有很多东西了. 四条组织路由的指导原则 给路由处理器用命名函数: 到目前为止,我 ...
- iOS10 UI教程视图调试
iOS10 UI教程视图调试 iOS10 UI教程视图调试,当视图很复杂的时候,层次结构就不会很简单了.Xcode可以通过视图(View)调试帮助开发者解决层次结构复杂的问题.视图调试是在Xcode ...
- Swift3.0语言教程组合字符串
Swift3.0语言教程组合字符串 Swift3.0语言教程组合字符串,当开发者想要将已经存在的字符串进行组合,形成一个新的字符串,可以使用NSString中的两个方法,分别为appending(_: ...
- 快销品 车销批发管理手持终端PDA系统 打印开单 入库 库存 盘点多功能一体
手持POS终端PDA移动开单 PDA通过扫描商品条码移动开单,实现便携式办公,伴随式销售,浩瀚技术研发团队开发的一款最新产品,PDA能通过WIFI无线局域网.GPRS互联网直接与主机连接,让公司业务人 ...
- Visual Studio 设置 Inherited include Directories
在用Visual Studio进行开发的时候,避免不了要使用一些常用的第三方提供的库.如果是一次两次设置还能让人忍受,但是如果要写很多项目的话,设置这些库真的很让人头疼.不过Visual Studio ...