Oracle+ASM启动和关闭
启动关闭注意事项
1 ASM实例的启动和数据库实例的启动有严格的先后关系,ASM启动一定早于数据库实例,关闭一定晚于ASM实例,因为它是数据库数据文件存储位置;
2需要优先启动CSS,HAS服务。
启动:
一启动时应该先启动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.cssd和ora.diskmon这2个服务是依赖于HAS维护的.
3
进一步查看各资源的状态
[grid@ogg1 ~]$
crs_stat -t
[grid@ogg1 ~]$
crsctl status resource -t
4
检查ora.cssd和ora.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.cssd和ora.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.css和ora.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.css和ora.diskmon的Auto
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
来自:
http://blog.csdn.net/yfleng2002/article/details/7785216
http://blog.csdn.net/yfleng2002/article/details/7785216