千家信息网

如何理解Oracle ASM启动与关闭

发表于:2025-01-21 作者:千家信息网编辑
千家信息网最后更新 2025年01月21日,本篇文章为大家展示了如何理解Oracle ASM启动与关闭,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。Oracle+ASM启动和关闭启动关闭注意事项1 AS
千家信息网最后更新 2025年01月21日如何理解Oracle ASM启动与关闭

本篇文章为大家展示了如何理解Oracle ASM启动与关闭,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

Oracle+ASM启动和关闭

启动关闭注意事项

1 ASM实例的启动和数据库实例的启动有严格的先后关系,ASM启动一定早于数据库实例,关闭一定晚于ASM实例,因为它是数据库数据文件存储位置;

2 需要优先启动CSSHAS服务。

启动:

启动时应该先启动ASM,在启动数据库

如果顺序反了会报错

例如:

1 关闭ASM

[grid@ogg1 ~]$ sqlplus

Enter user-name: /as sysasm

SQL> shutdown immediate

ASM diskgroups dismounted

ASM instance shutdown

2 启动数据库报错

[oracle@ogg1 ~]$ sqlplus / as sysdba

SQL> startup

ORA-01078: failure in processing system parameters

ORA-01565: error in identifying file '+SYSTEDG/prod1/spfileprod1.ora'

ORA-17503: ksfdopn:2 Failed to open file +SYSTEDG/prod1/spfileprod1.ora

ORA-15077: could not locate ASM instance serving a required diskgroup

正确的顺序是

启动ASM之前应该确保css,has服务已经启动

1

检查CSS服务是否启动:

[grid@ogg1 ~]$ crsctl check css

[grid@ogg1 ~]$ ps -ef|grep cssd

2

检查HAS服务是否启动:

[grid@ogg1 ~]$ crsctl check has

[grid@ogg1 ~]$ ps -ef|grep d.bin

发现HAS服务启动了,ora.cssdora.diskmon2个服务是依赖于HAS维护的.

3

进一步查看各资源的状态

[grid@ogg1 ~]$ crs_stat -t

[grid@ogg1 ~]$ crsctl status resource -t

4

检查ora.cssdora.diskmon的默认属性

[grid@ogg1 ~]$ crs_stat -p ora.cssd

。。。。。

AUTO_START=never

。。。。。

[grid@ogg1 ~]$ crs_stat -p ora.diskmon

。。。。。。

AUTO_START=never

。。。。。。

可以看到这两个资源的AUTO_START属性默认都设置为never,

也就是说他们不会随着HAS服务的启动而自动启动的,尽管默认情况下HAS服务是开机自动启动的.

5

手动启动

[grid@ogg1 ~]$ crsctl start resource ora.cssd

:ora.cssdora.diskmon这两个服务是有依赖关系的,启动哪个都会把两个都起来.

6 其他操作

1)默认情况下HAS(High Availability Service)是自动启动的.

通过如下命令可以取消和启用自动启动

取消自启动:crsctl disable has

启用自启动:crsctl enable has

2)HAS手动启动和停止

crsctl start has

crsctl stop has

3)查看HAS的状态

crsctl check has

4)如果想让ora.cssora.diskmon服务随着HAS的启动而自动启动,可以这两个服务的AUTO_START属性

crsctl modify resource "ora.cssd" -attr "AUTO_START=1"

or

crsctl modify resource "ora.diskmon" -attr "AUTO_START=1"

5)如果想取消ora.cssora.diskmonAuto start

crsctl modify resource "ora.cssd" -attr "AUTO_START=never"

crsctl modify resource "ora.diskmon" -attr "AUTO_START=never"

启动ASM实例

[grid@ogg1 ~]$ sqlplus / as sysasm

SQL> startup

SQL> col instance_name for a15

SQL> col status for a15

SQL> select instance_name,status from v$instance;

INSTANCE_NAME STATUS

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

+ASM STARTED

启动数据库

[oracle@ogg1 ~]$ sqlplus / as sysdba

SQL> startup

SQL> col instance_name for a15

SQL> col status for a15

SQL> select instance_name,status from v$instance;

INSTANCE_NAME STATUS

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

prod1 OPEN

关闭ASM

关闭应该先关闭数据库,在关闭ASM

如果顺序反了会报错

例如:

1 关闭ASM

[root@ogg1 ~]# su - grid

[grid@ogg1 ~]$ sqlplus / as sysasm

SQL> shutdown immediate

ORA-15097: cannot SHUTDOWN ASM instance with connected client (process 7322)

正确的顺序是:

关闭数据库

[oracle@ogg1 ~]$ sqlplus / as sysdba

SQL> shutdown immediate

关闭ASM

[root@ogg1 ~]# su - grid

[grid@ogg1 ~]$ sqlplus / as sysasm

SQL> shutdown immediate

ASM diskgroups dismounted

ASM instance shutdown

上述内容就是如何理解Oracle ASM启动与关闭,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注行业资讯频道。

0