加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Oracle RAC环境下ASM磁盘组扩容

发布时间:2020-12-12 13:17:12 所属栏目:百科 来源:网络整理
导读:Oracle RAC环境下ASM磁盘组扩容 ?实验环境: 操作系统环境 :OEL 3.8.13-68.3.4.el6uek.x86_64 数据库环境 :11.2.0.4 GRID及DATABASE ? 实验目的: 存储空间不足,需要给磁盘组DATA加一块磁盘,而后观察是否运行正常 ? **********准备工作********** ? 1.检

Oracle RAC环境下ASM磁盘组扩容

?实验环境:

操作系统环境 :OEL 3.8.13-68.3.4.el6uek.x86_64

数据库环境 :11.2.0.4 GRID及DATABASE

?

实验目的:

存储空间不足,需要给磁盘组DATA加一块磁盘,而后观察是否运行正常

?

**********准备工作**********

?

1.检查各个节点database、asm及grid日志是否有错误信息

SQL> select instance_name,host_name,startup_time,status from gv$instance;

?

INSTANCE_NAME HOST_NAME STARTUP_TIME STATUS

---------------- ---------------------------------------------------------------- ------------------- -----------

+ASM1 node01 2018-04-16 12:53:15 STARTED

+ASM2 node02 2018-04-16 13:00:58 STARTED

?

SQL> select instance_name,status from gv$instance;

?

INSTANCE_NAME HOST_NAME STARTUP_TIME STATUS

---------------- ---------------------------------------------------------------- ------------------- ------------

racdb1 node01 2018-04-16 13:51:24 OPEN

racdb2 node02 2018-04-16 13:51:28 OPEN

检查node01和node02节点数据库、ASM及grid日志是否有错误信息

?

2.ASM磁盘组及磁盘检查

SQL> select * from gv$asm_client order by 1,2;

?

?? INST_ID GROUP_NUMBER INSTANCE_NAME DB_NAME STATUS SOFTWARE_VERSION COMPATIBLE_VERSION

---------- ------------ ------------------------------ -------- ------------ ------------------------------ ------------------------------

? 1 1 +ASM1 +ASM CONNECTED 11.2.0.4.0 11.2.0.4.0

? 1 2 +ASM1 +ASM CONNECTED 11.2.0.4.0 11.2.0.4.0

? 1 2 racdb1 racdb CONNECTED 11.2.0.4.0 11.2.0.4.0

? 2 1 +ASM2 +ASM CONNECTED 11.2.0.4.0 11.2.0.4.0

? 2 2 +ASM2 +ASM CONNECTED 11.2.0.4.0 11.2.0.4.0

? 2 2 racdb2 racdb CONNECTED 11.2.0.4.0 11.2.0.4.0

?

SQL> select group_number,name,state,type,total_mb,free_mb,usable_file_mb,allocation_unit_size/1024/1024 unit_mb from v$asm_diskgroup order by 1;

?

GROUP_NUMBER NAME STATE TYPE TOTAL_MB FREE_MB USABLE_FILE_MB UNIT_MB

------------ -------------------- ----------- ------ ---------- ---------- -------------- ----------

??? 1 OCR_VF MOUNTED NORMAL 6144 5218 1585 1

??? 2 DATA MOUNTED EXTERN 8192 5740 5740 1

?

SQL>select group_number,path,mount_status,redundancy,failgroup,create_date from v$asm_disk order by 1,2;

?

GROUP_NUMBER NAME PATH MOUNT_S STATE REDUNDA TOTAL_MB FREE_MB FAILGROUP CREATE_DATE

------------ -------------------- ------------------------------ ------- -------- ------- ---------- ---------- -------------------- -------------------

??? 1 OCR_VF_0000 /dev/asm-diskb CACHED NORMAL UNKNOWN 2048 1739 OCR_VF_0000 2018-04-16 12:50:33

??? 1 OCR_VF_0001 /dev/asm-diskc CACHED NORMAL UNKNOWN 2048 1739 OCR_VF_0001 2018-04-16 12:50:33

??? 1 OCR_VF_0002 /dev/asm-diskd CACHED NORMAL UNKNOWN 2048 1740 OCR_VF_0002 2018-04-16 12:50:33

??? 2 DATA_0000 /dev/asm-diske CACHED NORMAL UNKNOWN 4096 2871 DATA_0000 2018-04-16 13:10:07

??? 2 DATA_0001 /dev/asm-diskf CACHED NORMAL UNKNOWN 4096 2869 DATA_0001 2018-04-16 13:10:07

3.系统层面记录UDEV结果

[[email?protected] ~]# cat /etc/udev/rules.d/99-oracle-asmdisks.rules

KERNEL=="sd*",SUBSYSTEM=="block",PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="1ATA_VBOX_HARDDISK_VB1ed55b97-19b7f780",NAME="asm-diskb",OWNER="grid",GROUP="asmadmin",MODE="0660"

KERNEL=="sd*",RESULT=="1ATA_VBOX_HARDDISK_VBacfab6a9-29b2beda",NAME="asm-diskc",RESULT=="1ATA_VBOX_HARDDISK_VB70280fd2-8b5bc96a",NAME="asm-diskd",RESULT=="1ATA_VBOX_HARDDISK_VBfb27a599-aec3c0fe",NAME="asm-diske",RESULT=="1ATA_VBOX_HARDDISK_VB7ee690ce-ab92de29",NAME="asm-diskf",MODE="0660"

?

[[email?protected] ~]# ll /dev/asm-disk*

brw-rw---- 1 grid asmadmin 8,16 Apr 16 14:49 /dev/asm-diskb

brw-rw---- 1 grid asmadmin 8,32 Apr 16 14:49 /dev/asm-diskc

brw-rw---- 1 grid asmadmin 8,48 Apr 16 14:49 /dev/asm-diskd

brw-rw---- 1 grid asmadmin 8,64 Apr 16 14:49 /dev/asm-diske

brw-rw---- 1 grid asmadmin 8,80 Apr 16 14:49 /dev/asm-diskf

************数据库层面工作************

?

4.停止对应数据库的业务

此处不做赘述

?

5.检查数据库会话及停止监听

SQL> select * from v$session;

检查是否还有应用连接数据库,如果没有则停止监听

检查各个节点监听状态

?

[[email?protected] ~]$ srvctl status listener -n node01

Listener LISTENER is enabled on node(s): node01

Listener LISTENER is running on node(s): node01

[[email?protected] ~]$ srvctl status listener -n node02

Listener LISTENER is enabled on node(s): node02

Listener LISTENER is running on node(s): node02

禁止监听自启动

?

[[email?protected] ~]$ srvctl disable listener -n node01

[[email?protected] ~]$ srvctl disable listener -n node02

停止监听

?

[[email?protected] ~]$ srvctl stop listener -n node01

[[email?protected] ~]$ srvctl stop listener -n node02

查看停止及关闭自启后的监听状态

?

[[email?protected] ~]$ srvctl status listener -n node01

Listener LISTENER is disabled on node(s): node01

Listener LISTENER is not running on node(s): node01

[[email?protected] ~]$ srvctl status listener -n node02

Listener LISTENER is disabled on node(s): node02

Listener LISTENER is not running on node(s): node02

6.关闭数据库

检查数据库状态

?

[[email?protected] ~]$ srvctl status database -d racdb

Instance racdb1 is running on node node01

Instance racdb2 is running on node node02

检查数据库配置

?

[[email?protected] ~]$ srvctl config database -d racdb

Database unique name: racdb

Database name: racdb

Oracle home: /u01/app/oracle/product/11.2.0.4/dbhome_1

Oracle user: oracle

Spfile: +DATA/racdb/spfileracdb.ora

Domain:

Start options: open

Stop options: immediate

Database role: PRIMARY

Management policy: AUTOMATIC

Server pools: racdb

Database instances: racdb1,racdb2

Disk Groups: DATA

Mount point paths:

Services:

Type: RAC

Database is administrator managed

禁止数据库自启动(需切换root用户)

?

[[email?protected] bin]# ./srvctl disable database -d racdb

关闭数据库

?

[[email?protected] ~]$ srvctl stop database -d racdb

检查关闭后数据库状态

?

[[email?protected] ~]$ srvctl status database -d racdb

Instance racdb1 is not running on node node01

Instance racdb2 is not running on node node02

7.关闭集群软件

查看各个节点集群是否为自启动

?

[[email?protected] bin]# ./crsctl config has

CRS-4622: Oracle High Availability Services autostart is enabled.

[[email?protected] bin]# ./crsctl config has

CRS-4622: Oracle High Availability Services autostart is enabled.

禁止各个节点的自启动

?

[[email?protected] bin]# ./crsctl disable has

CRS-4621: Oracle High Availability Services autostart is disabled.

[[email?protected] bin]# ./crsctl disable has

CRS-4621: Oracle High Availability Services autostart is disabled.

查看各个节点禁止自启动是否生效

?

[[email?protected] bin]# ./crsctl config has

CRS-4621: Oracle High Availability Services autostart is disabled.

[[email?protected] bin]# ./crsctl config has

CRS-4621: Oracle High Availability Services autostart is disabled.

停止各个节点集群

?

[[email?protected] bin]# ./crsctl stop has

[[email?protected] bin]# ./crsctl stop has

查看各个节点是否还有后台进程

?

[[email?protected] ~]$ ps -ef | grep css

grid 6888 31689 0 15:12 pts/0 00:00:00 grep css

[[email?protected] ~]$ ps -ef | grep crs

grid 6893 31689 0 15:12 pts/0 00:00:00 grep crs

[[email?protected] ~]$ ps -ef | grep asm

grid 6895 31689 0 15:12 pts/0 00:00:00 grep asm

***************OS层面工作***************

?

8.系统添加共享磁盘后测试及重启

此处不做赘述

?

9.各个节点使用UDEV添加磁盘

[[email?protected] ~]# cat /etc/udev/rules.d/99-oracle-asmdisks.rules

KERNEL=="sd*",RESULT=="1ATA_VBOX_HARDDISK_VBee83e2f5-8316b596",NAME="asm-diskg",MODE="0660"

[[email?protected] ~]# ll /dev/asm-disk*

brw-rw---- 1 grid asmadmin 8,16 Apr 16 15:18 /dev/asm-diskb

brw-rw---- 1 grid asmadmin 8,32 Apr 16 15:18 /dev/asm-diskc

brw-rw---- 1 grid asmadmin 8,48 Apr 16 15:18 /dev/asm-diskd

brw-rw---- 1 grid asmadmin 8,64 Apr 16 15:18 /dev/asm-diske

brw-rw---- 1 grid asmadmin 8,80 Apr 16 15:18 /dev/asm-diskf

brw-rw---- 1 grid asmadmin 8,96 Apr 16 15:23 /dev/asm-diskg

确保各个节点可以识别到磁盘且一致

?

**********数据库层面工作*********

?

10.启动集群

[[email?protected] ~]# cd /u01/app/ghome/grid/bin/

[[email?protected] bin]# ./crsctl start has

CRS-4123: Oracle High Availability Services has been started.

[[email?protected] ~]# cd /u01/app/ghome/grid/bin/

[[email?protected] bin]# ./crsctl start has

CRS-4123: Oracle High Availability Services has been started.

11.检查集群的各个组件是否启动正常

此处不做赘述

?

12.ASM扩容

检查asm是否识别到未添加的磁盘

?

SQL> select group_number,allocation_unit_size/1024/1024 unit_mb from v$asm_diskgroup order by 1;

?

GROUP_NUMBER NAME STATE TYPE TOTAL_MB FREE_MB USABLE_FILE_MB UNIT_MB

------------ -------------------- ----------- ------ ---------- ---------- -------------- ----------

??? 1 DATA MOUNTED EXTERN 8192 5740 5740 1

??? 2 OCR_VF MOUNTED NORMAL 6144 5218 1585 1

?

SQL> select group_number,2;

?

GROUP_NUMBER NAME PATH MOUNT_S STATE REDUNDA TOTAL_MB FREE_MB FAILGROUP CREATE_DA

------------ -------------------- ------------------------------ ------- -------- ------- ---------- ---------- ------------------------------ ---------

??? 0 /dev/asm-diskg CLOSED NORMAL UNKNOWN 0 0

??? 1 DATA_0000 /dev/asm-diske CACHED NORMAL UNKNOWN 4096 2871 DATA_0000 16-APR-18

??? 1 DATA_0001 /dev/asm-diskf CACHED NORMAL UNKNOWN 4096 2869 DATA_0001 16-APR-18

??? 2 OCR_VF_0000 /dev/asm-diskb CACHED NORMAL UNKNOWN 2048 1739 OCR_VF_0000 16-APR-18

??? 2 OCR_VF_0001 /dev/asm-diskc CACHED NORMAL UNKNOWN 2048 1739 OCR_VF_0001 16-APR-18

??? 2 OCR_VF_0002 /dev/asm-diskd CACHED NORMAL UNKNOWN 2048 1740 OCR_VF_0002 16-APR-18

给磁盘组DATA添加磁盘

?

SQL> alter diskgroup DATA add disk ‘/dev/asm-diskg‘ rebalance power 10;

?

Diskgroup altered.

如果添加时间过长,可查看v$asm_operation来观察进度。

?

检查添加结果

?

SQL> select group_number,2;

?

GROUP_NUMBER NAME PATH MOUNT_S STATE REDUNDA TOTAL_MB FREE_MB FAILGROUP CREATE_DA

------------ -------------------- ------------------------------ ------- -------- ------- ---------- ---------- ------------------------------ ---------

??? 1 DATA_0000 /dev/asm-diske CACHED NORMAL UNKNOWN 4096 3276 DATA_0000 16-APR-18

??? 1 DATA_0001 /dev/asm-diskf CACHED NORMAL UNKNOWN 4096 3277 DATA_0001 16-APR-18

??? 1 DATA_0002 /dev/asm-diskg CACHED NORMAL UNKNOWN 4096 3281 DATA_0002 16-APR-18

??? 2 OCR_VF_0000 /dev/asm-diskb CACHED NORMAL UNKNOWN 2048 1739 OCR_VF_0000 16-APR-18

??? 2 OCR_VF_0001 /dev/asm-diskc CACHED NORMAL UNKNOWN 2048 1739 OCR_VF_0001 16-APR-18

??? 2 OCR_VF_0002 /dev/asm-diskd CACHED NORMAL UNKNOWN 2048 1740 OCR_VF_0002 16-APR-18

?

6 rows selected.

?

SQL> select group_number,allocation_unit_size/1024/1024 unit_mb from v$asm_diskgroup order by 1;

?

?

GROUP_NUMBER NAME STATE TYPE TOTAL_MB FREE_MB USABLE_FILE_MB UNIT_MB

------------ -------------------- ----------- ------ ---------- ---------- -------------- ----------

??? 1 DATA MOUNTED EXTERN 12288 9834 9834 1

??? 2 OCR_VF MOUNTED NORMAL 6144 5218 1585 1

13.启动数据库

[[email?protected] ~]$ srvctl status database -d racdb

Instance racdb1 is running on node node01

Instance racdb2 is running on node node02

至此,扩容成功

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读