ORACLE 12c RAC的常用管理命令

一、查询

1、RAC查询

1.1、查询节点

[grid@swnode1 ~]$ su - grid

[grid@swnode1 ~]$ /u01/app/12.2.0/grid/bin/olsnodes -s

[grid@swnode1 ~]$ /u01/app/12.2./grid/bin/olsnodes -s
swnode1 Active
swnode2 Active

查看群集的名称:

[grid@swnode1 ~]$ /oracle/app/12.2.0/grid/bin/cemutlo -n
swnode-cluster

1.2、查询群集状态

[grid@swnode1 ~]$ /u01/app/12.2.0/grid/bin/crsctl check cluster  //也可以加-all 查询所有节点

[grid@swnode1 ~]$ /u01/app/12.2./grid/bin/crsctl check cluster  //也可以加-all 查询所有节点
CRS-: Cluster Ready Services is online
CRS-: Cluster Synchronization Services is online
CRS-: Event Manager is online

1.3、检查集群中资源的状态

两个命令都可以

crsctl stat res -t
crs_stat -t    (crs_*命令oracle官方已经不建议使用了)

[grid@swnode1 ~]$ crsctl stat res -t
--------------------------------------------------------------------------------
Name Target State Server State details
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.ASMNET1LSNR_ASM.lsnr
ONLINE ONLINE swnode1 STABLE
ONLINE ONLINE swnode2 STABLE
ora.DATA.dg
ONLINE ONLINE swnode1 STABLE
ONLINE ONLINE swnode2 STABLE
ora.LISTENER.lsnr
ONLINE ONLINE swnode1 STABLE
ONLINE ONLINE swnode2 STABLE
ora.MGMT.dg
ONLINE ONLINE swnode1 STABLE
ONLINE ONLINE swnode2 STABLE
ora.OCR.dg
ONLINE ONLINE swnode1 STABLE
ONLINE ONLINE swnode2 STABLE
ora.net1.network
ONLINE ONLINE swnode1 STABLE
ONLINE ONLINE swnode2 STABLE
ora.ons
ONLINE ONLINE swnode1 STABLE
ONLINE ONLINE swnode2 STABLE
ora.proxy_advm
OFFLINE OFFLINE swnode1 STABLE
OFFLINE OFFLINE swnode2 STABLE
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.LISTENER_SCAN1.lsnr
ONLINE ONLINE swnode2 STABLE
ora.MGMTLSNR
ONLINE ONLINE swnode2 169.254.186.118 10.0
.0.2,STABLE
ora.asm
ONLINE ONLINE swnode1 Started,STABLE
ONLINE ONLINE swnode2 Started,STABLE
OFFLINE OFFLINE STABLE
ora.cvu
ONLINE ONLINE swnode2 STABLE
ora.mgmtdb
ONLINE ONLINE swnode2 Open,STABLE
ora.orcl.db
ONLINE ONLINE swnode1 Open,HOME=/u01/app/o
racle/product/12.2.
/db_1,STABLE
ONLINE ONLINE swnode2 Open,HOME=/u01/app/o
racle/product/12.2.
/db_1,STABLE
ora.qosmserver
ONLINE ONLINE swnode2 STABLE
ora.scan1.vip
ONLINE ONLINE swnode2 STABLE
ora.swnode1.vip
ONLINE ONLINE swnode1 STABLE
ora.swnode2.vip
ONLINE ONLINE swnode2 STABLE
--------------------------------------------------------------------------------

[grid@swnode1 ~]$ crsctl stat res -t

1.4、节点应用程序状态

[grid@swnode1 ~]$ srvctl status nodeapps
VIP 192.168.137.21 已启用
VIP 192.168.137.21 正在节点上运行: swnode1
VIP 192.168.137.22 已启用
VIP 192.168.137.22 正在节点上运行: swnode2
网络已启用
网络正在节点上运行: swnode1
网络正在节点上运行: swnode2
ONS 已启用
ONS 守护程序正在节点上运行:swnode1
ONS 守护程序正在节点上运行:swnode2

2、ASM查询

2.1、状态查看

[grid@swnode1 ~]$ srvctl status asm

[grid@swnode1 ~]$ srvctl status asm
ASM 正在 swnode2,swnode1 上运行

[grid@swnode1 ~]$ srvctl status asm -a

[grid@swnode1 ~]$  srvctl status asm -a
ASM 正在 swnode2,swnode1 上运行
ASM 已启用。
ASM 实例 +ASM1 正在节点 swnode1 上运行
连接的客户机数:
客户机名称: gnnt1:orcl:swnode-cluster swnode1:_OCR:swnode-cluster
ASM 实例 +ASM2 正在节点 swnode2 上运行
连接的客户机数:
客户机名称: -MGMTDB:_mgmtdb:swnode-cluster gnnt2:orcl:swnode-cluster swnode2:_OCR:swnode-cluster

2.2、查看asm配置

[grid@swnode1 ~]$ srvctl config asm -a

[grid@swnode1 ~]$ srvctl config asm -a
ASM 主目录: <CRS home>
口令文件: +OCR/orapwASM
Backup of Password file:
ASM 监听程序: LISTENER
ASM 已启用。
ASM 已在以下节点上分别启用:
ASM 已在以下节点上分别禁用:
ASM 实例计数:
集群 ASM 监听程序: ASMNET1LSNR_ASM

2.3、查看asm是不是Flex

[grid@swnode1 ~]$ asmcmd showclustermode

[grid@swnode1 ~]$ asmcmd showclustermode
ASM cluster : Flex mode enabled

3、监听查看

3.1、查看监听状态

[grid@swnode1 ~]$ srvctl status listener

[grid@swnode1 ~]$ srvctl status listener
监听程序 LISTENER 已启用
监听程序 LISTENER 正在节点上运行: swnode2,swnode1

3.2、查看监听配置

[grid@swnode1 ~]$ srvctl config listener -a

[grid@swnode1 ~]$ srvctl config listener -a
名称: LISTENER
类型: Database Listener
网络: , 所有者: grid
主目录: <CRS home>
节点 swnode2,swnode1 上的 /u01/app/12.2./grid
端点: TCP:
监听程序已启用。
监听程序已在以下节点上分别启用:
监听程序已在以下节点上分别禁用:

3.3、查看scan监听器的状态

[grid@swnode1 ~]$ srvctl status scan_listener

[grid@swnode1 ~]$ srvctl status scan_listener
SCAN 监听程序 LISTENER_SCAN1 已启用
SCAN 监听程序 LISTENER_SCAN1 正在节点 swnode2 上运行

[grid@swnode1 ~]$ srvctl status scan

[grid@swnode1 ~]$ srvctl status scan
SCAN VIP scan1 已启用
SCAN VIP scan1 正在节点 swnode2 上运行

3.4、查看scan网络配置

[grid@swnode1 ~]$ srvctl config scan

[grid@swnode1 ~]$  srvctl config scan
SCAN 名称: swnode-cluster-scan, 网络:
子网 IPv4: 192.168.137.0/255.255.255.0/bond0, static
子网 IPv6:
SCAN IPv4 VIP: 192.168.137.137
SCAN VIP 已启用。
SCAN VIP 已在以下节点上分别启用:
SCAN VIP 已在以下节点上分别禁用:

3.5、查看vip网络

srvctl status vip -n swnode1

srvctl config vip -n swnode1

3.6、节点应用程序配置(VIP、GSD、ONS、监听器)

[grid@swnode1 ~]$ srvctl config nodeapps

[grid@swnode1 ~]$ srvctl config nodeapps
网络1存在
子网 IPv4: 192.168.137.0/255.255.255.0/bond0, static
子网 IPv6:
试通目标:
网络已启用
网络已在以下节点上分别启用:
网络已在以下节点上分别禁用:
VIP 存在: 网络编号 , 托管节点 swnode1
VIP 名称: swnode1-vip
VIP IPv4 地址: 192.168.137.21
VIP IPv6 地址:
VIP 已启用。
VIP 已在以下节点上分别启用:
VIP 已在以下节点上分别禁用:
VIP 存在: 网络编号 , 托管节点 swnode2
VIP 名称: swnode2-vip
VIP IPv4 地址: 192.168.137.22
VIP IPv6 地址:
VIP 已启用。
VIP 已在以下节点上分别启用:
VIP 已在以下节点上分别禁用:
ONS 存在: 本地端口 , 远程端口 , EM 端口 , 使用 SSL true
ONS 已启用
ONS 已在以下节点上分别启用:
ONS 已在以下节点上分别禁用:

4、数据库查看

4.1、数据库状态

数据库名查询

[grid@swnode1 ~]$ srvctl config database

[grid@swnode1 ~]$ srvctl config database
orcl

[grid@swnode1 ~]$ srvctl status database -d orcl

[grid@swnode1 ~]$ srvctl status database -d orcl -f -v

实例 gnnt1 正在节点 swnode1 上运行。实例状态: Open。
  实例 gnnt2 正在节点 swnode2 上运行。实例状态: Open。

4.2、查看数据库配置

[grid@swnode1 ~]$ srvctl config database -d orcl -a

[grid@swnode1 ~]$ srvctl config database -d orcl -a
数据库唯一名称: orcl
数据库名: orcl
Oracle 主目录: /u01/app/oracle/product/12.2.0/db_1
Oracle 用户: oracle
Spfile: +MGMT/ORCL/PARAMETERFILE/spfile.292.977561595
口令文件: +MGMT/ORCL/PASSWORD/pwdorcl.273.977557691
域:
启动选项: open
停止选项: immediate
数据库角色: PRIMARY
管理策略: AUTOMATIC
服务器池:
磁盘组: MGMT,DATA
装载点路径:
服务:
类型: RAC
启动并行:
停止并行:
数据库已启用
数据库已在以下节点上分别启用:
数据库已在以下节点上分别禁用:
OSDBA 组: dba
OSOPER 组: oper
数据库实例: gnnt1,gnnt2
已配置的节点: swnode1,swnode2
CSS 关键型: no
CPU 计数: 0
内存目标: 0
最大内存: 0
数据库服务的默认网络编号:
数据库是管理员管理的

4.3、检查数据库的状态

[grid@swnode1 ~]$ srvctl status database -d orcl

[grid@swnode1 ~]$ srvctl status database -d orcl
实例 gnnt1 正在节点 swnode1 上运行
实例 gnnt2 正在节点 swnode2 上运行

srvctl status instance -d orcl -i gnnt1 # 检查指定实例的状态

 二、管理命令

1、RAC群集管理命令

1.1、crs_start命令起停rac环境

[grid@swnode1 ~]$ crs_start -all                  启动

[grid@swnode1 ~]$ crs_start -t      查看

[grid@swnode1 ~]$ crs_stop -all      关闭

1.2、crsctl起停单节点RAC

停止/启动节点集群服务,须要以root用户
 
[root@swnode1 ]# crsctl stop cluster -all -----停止所有节点集群服务
[root@swnode1 ]# crsctl stop cluster    -------停止本节点集群服务
[root@swnode1 ~]# /u01/app/12.2./grid/bin/crsctl start cluster -all
CRS-: The following nodes did not reply within the allotted time:
swnode2
CRS-: Oracle Clusterware is already running on 'swnode1'
CRS-: Command Start failed, or completed with errors.

从OCR中删除已有的数据库:
srvctl remove database -d orcl

向OCR中添加一个数据库的实例:
srvctl add instance -d -i -n
srvctl add instance -d -i -n

1.3、通过srvctl 命令管理一个节点的rac

srvctl start|stop|status nodeapps -n rac_node

[grid@swnode1 ~]$ srvctl status nodeapps -n swnode1
VIP 192.168.137.21 已启用
VIP 192.168.137.21 正在节点上运行: swnode1
网络已启用
网络正在节点上运行: swnode1
ONS 已启用
ONS 守护程序正在节点上运行:swnode1

2、ORACLE数据库管理命令

2.1、通过SRVCTL命令来start/stop/check所有的实例:
srvctl start|stop|status database -d  db_name

[grid@swnode1 ~]$ srvctl status database -d orcl
实例 gnnt1 正在节点 swnode1 上运行
实例 gnnt2 正在节点 swnode2 上运行

2.2、通过SRVCTL命令来start/stop/check管理指定实例:
srvctl start|stop|status instance -d -i

[grid@swnode1 ~]$ srvctl status instance -d orcl -i gnnt1
实例 gnnt1 正在节点 swnode1 上运行

3、ASM管理命令

启动前确保css、has服务启动

上面RAC状态检查

启动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

进入ASM

asmcmd -p

 三、重启RAC数据库

关闭顺序 :关闭PDB----->关闭数据库------>关闭集群服务 (先关闭PDB 在关闭数据库实例,否则smon将有一个自动回复过程)
启动顺序:开机自启动集群服务查看集群服务器是否正常---------->打开数据库--------->启动PDB(默认是在mount状态下)

 pdb管理:

查看状态
SQL> select name,open_mode from
v$pdbs ; NAME OPEN_MODE
---------- --------------------
PDB$SEED READ ONLY
GNNT_PDB READ WRITE //状态是开启

关闭
SQL>
alter pluggable database GNNT_PDB close; Pluggable database altered. SQL> select name,open_mode from v$pdbs ; NAME OPEN_MODE
---------- --------------------
GNNT_PDB MOUNTED //状态变为了关闭
打开pdb
SQL>
alter pluggable database GNNT_PDB open; Pluggable database altered. 也可以切换到pdb下操作
SQL> alter session set container=gnnt_pdb; Session altered. SQL> shutdown;
Pluggable Database closed. SQL> startup;
Pluggable Database closed.

 关闭database

[oracle@swnode1 ~]$ srvctl stop database -d orcl
[oracle@swnode1 ~]$ srvctl status database -d orcl
实例 gnnt1 没有在 swnode1 节点上运行
实例 gnnt2 没有在 swnode2 节点上运行

关闭rac

[root@swnode1 ~]# /u01/app/12.2./grid/bin/crsctl stop cluster -all
CRS-: 尝试停止 'ora.crsd' (在 'swnode1' 上)
CRS-: 正在开始关闭服务器 'swnode1' 上集群就绪服务管理的资源的操作
CRS-: 尝试停止 'ora.OCR.dg' (在 'swnode1' 上)
CRS-: 尝试停止 'ora.DATA.dg' (在 'swnode1' 上)
CRS-: 尝试停止 'ora.MGMT.dg' (在 'swnode1' 上)
CRS-: 尝试停止 'ora.LISTENER.lsnr' (在 'swnode1' 上)
CRS-: 成功停止 'ora.LISTENER.lsnr' (在 'swnode1' 上)
CRS-: 尝试停止 'ora.swnode1.vip' (在 'swnode1' 上)
CRS-: 成功停止 'ora.OCR.dg' (在 'swnode1' 上)
CRS-: 成功停止 'ora.MGMT.dg' (在 'swnode1' 上)
CRS-: 成功停止 'ora.DATA.dg' (在 'swnode1' 上)
CRS-: 尝试停止 'ora.asm' (在 'swnode1' 上)
CRS-: 成功停止 'ora.asm' (在 'swnode1' 上)
CRS-: 尝试停止 'ora.ASMNET1LSNR_ASM.lsnr' (在 'swnode1' 上)
CRS-: 成功停止 'ora.swnode1.vip' (在 'swnode1' 上)
CRS-: 成功停止 'ora.ASMNET1LSNR_ASM.lsnr' (在 'swnode1' 上)
CRS-: 尝试停止 'ora.ons' (在 'swnode1' 上)
CRS-: 成功停止 'ora.ons' (在 'swnode1' 上)
CRS-: 尝试停止 'ora.net1.network' (在 'swnode1' 上)
CRS-: 成功停止 'ora.net1.network' (在 'swnode1' 上)
CRS-: 关闭 'swnode1' 上集群就绪服务管理的资源的操作已完成
CRS-: 成功停止 'ora.crsd' (在 'swnode1' 上)
CRS-: 尝试停止 'ora.ctssd' (在 'swnode1' 上)
CRS-: 尝试停止 'ora.evmd' (在 'swnode1' 上)
CRS-: 尝试停止 'ora.storage' (在 'swnode1' 上)
CRS-: 成功停止 'ora.storage' (在 'swnode1' 上)
CRS-: 尝试停止 'ora.asm' (在 'swnode1' 上)
CRS-: 成功停止 'ora.ctssd' (在 'swnode1' 上)
CRS-: 成功停止 'ora.evmd' (在 'swnode1' 上)
CRS-: 成功停止 'ora.asm' (在 'swnode1' 上)
CRS-: 尝试停止 'ora.cluster_interconnect.haip' (在 'swnode1' 上)
CRS-: 成功停止 'ora.cluster_interconnect.haip' (在 'swnode1' 上)
CRS-: 尝试停止 'ora.cssd' (在 'swnode1' 上)
CRS-: 成功停止 'ora.cssd' (在 'swnode1' 上)
CRS-: The following nodes did not reply within the allotted time:
swnode2 //提示再节点2上执行超时,那就在2节点上单独执行
[root@swnode2 ~]# /u01/app/12.2./grid/bin/crsctl stop cluster
CRS-: Attempting to stop 'ora.crsd' on 'swnode2'
CRS-: Starting shutdown of Cluster Ready Services-managed resources on server 'swnode2'
CRS-: Attempting to stop 'ora.OCR.dg' on 'swnode2'
CRS-: Attempting to stop 'ora.mgmtdb' on 'swnode2'
CRS-: Attempting to stop 'ora.DATA.dg' on 'swnode2'
CRS-: Attempting to stop 'ora.swnode1.vip' on 'swnode2'
CRS-: Attempting to stop 'ora.LISTENER.lsnr' on 'swnode2'
CRS-: Attempting to stop 'ora.cvu' on 'swnode2'
CRS-: Attempting to stop 'ora.qosmserver' on 'swnode2'
CRS-: Attempting to stop 'ora.LISTENER_SCAN1.lsnr' on 'swnode2'
CRS-: Stop of 'ora.swnode1.vip' on 'swnode2' succeeded
CRS-: Stop of 'ora.OCR.dg' on 'swnode2' succeeded
CRS-: Stop of 'ora.DATA.dg' on 'swnode2' succeeded
CRS-: Stop of 'ora.cvu' on 'swnode2' succeeded
CRS-: Stop of 'ora.LISTENER_SCAN1.lsnr' on 'swnode2' succeeded
CRS-: Attempting to stop 'ora.scan1.vip' on 'swnode2'
CRS-: Stop of 'ora.LISTENER.lsnr' on 'swnode2' succeeded
CRS-: Stop of 'ora.scan1.vip' on 'swnode2' succeeded
CRS-: Stop of 'ora.mgmtdb' on 'swnode2' succeeded
CRS-: Attempting to stop 'ora.MGMT.dg' on 'swnode2'
CRS-: Attempting to stop 'ora.MGMTLSNR' on 'swnode2'
CRS-: Stop of 'ora.MGMT.dg' on 'swnode2' succeeded
CRS-: Attempting to stop 'ora.asm' on 'swnode2'
CRS-: Stop of 'ora.qosmserver' on 'swnode2' succeeded
CRS-: Stop of 'ora.asm' on 'swnode2' succeeded
CRS-: Attempting to stop 'ora.ASMNET1LSNR_ASM.lsnr' on 'swnode2'
CRS-: Stop of 'ora.MGMTLSNR' on 'swnode2' succeeded
CRS-: Attempting to stop 'ora.swnode2.vip' on 'swnode2'
CRS-: Stop of 'ora.swnode2.vip' on 'swnode2' succeeded
CRS-: Stop of 'ora.ASMNET1LSNR_ASM.lsnr' on 'swnode2' succeeded
CRS-: Attempting to stop 'ora.ons' on 'swnode2'
CRS-: Stop of 'ora.ons' on 'swnode2' succeeded
CRS-: Attempting to stop 'ora.net1.network' on 'swnode2'
CRS-: Stop of 'ora.net1.network' on 'swnode2' succeeded
CRS-: Shutdown of Cluster Ready Services-managed resources on 'swnode2' has completed
CRS-: Stop of 'ora.crsd' on 'swnode2' succeeded
CRS-: Attempting to stop 'ora.ctssd' on 'swnode2'
CRS-: Attempting to stop 'ora.evmd' on 'swnode2'
CRS-: Attempting to stop 'ora.storage' on 'swnode2'
CRS-: Stop of 'ora.storage' on 'swnode2' succeeded
CRS-: Attempting to stop 'ora.asm' on 'swnode2'
CRS-: Stop of 'ora.evmd' on 'swnode2' succeeded
CRS-: Stop of 'ora.ctssd' on 'swnode2' succeeded
CRS-: Stop of 'ora.asm' on 'swnode2' succeeded
CRS-: Attempting to stop 'ora.cluster_interconnect.haip' on 'swnode2'
CRS-: Stop of 'ora.cluster_interconnect.haip' on 'swnode2' succeeded
CRS-: Attempting to stop 'ora.cssd' on 'swnode2'
CRS-: Stop of 'ora.cssd' on 'swnode2' succeeded
04-13 21:35