你不可不看的 Oracle RAC 日常基本维护命令

所有实例和服务的状态

$ srvctl status database -d orcl

Instance orcl1 is running on node linux1

Instance orcl2 is running on node linux2

单个实例的状态

$ srvctl status instance -d orcl -i orcl2

Instance orcl2 is running on node linux2

在数据库全局命名服务的状态

$ srvctl status service -d orcl -s orcltest

Service orcltest is running on instance(s) orcl2, orcl1

特定节点上节点应用程序的状态

$ srvctl status nodeapps -n linux1

VIP is running on node: linux1

GSD is running on node: linux1

Listener is running on node: linux1

ONS daemon is running on node: linux1

ASM 实例的状态

$ srvctl status asm -n linux1

ASM instance +ASM1 is running on node linux1.

列出配置的所有数据库

$ srvctl config database

orcl

显示 RAC 数据库的配置

$ srvctl config database -d orcl

linux1 orcl1 /u01/app/oracle/product/10.2.0/db_1

linux2 orcl2 /u01/app/oracle/product/10.2.0/db_1

显示指定集群数据库的所有服务

$ srvctl config service -d orcl

orcltest PREF: orcl2 orcl1 AVAIL:

显示节点应用程序的配置 —(VIP、GSD、ONS、监听器)

$ srvctl config nodeapps -n linux1 -a -g -s -l

VIP exists.: /linux1-vip/192.168.1.200/255.255.255.0/eth0:eth1

GSD exists.

ONS daemon exists.

Listener exists.

显示 ASM 实例的配置

$ srvctl config asm -n linux1

+ASM1 /u01/app/oracle/product/10.2.0/db_1

集群中所有正在运行的实例

inst_id
, instance_number inst_no
, instance_name inst_name
, parallel
, status
, database_status db_status
, active_state state
, host_name host
FROM gv$instance
ORDER BY inst_id;

INST_ID INST_NO INST_NAME PAR STATUS DB_STATUS STATE HOST
-------- -------- ---------- --- ------- ------------ --------- -------
1 1 orcl1 YES OPEN ACTIVE NORMAL rac1
2 2 orcl2 YES OPEN ACTIVE NORMAL rac2

位于磁盘组中的所有数据文件

union
select member from v$logfile
union
select name from v$controlfile
union
select name from v$tempfile;

NAME
-------------------------------------------
+FLASH_RECOVERY_AREA/orcl/controlfile/current.258.570913191
+FLASH_RECOVERY_AREA/orcl/onlinelog/group_1.257.570913201
+FLASH_RECOVERY_AREA/orcl/onlinelog/group_2.256.570913211
+FLASH_RECOVERY_AREA/orcl/onlinelog/group_3.259.570918285
+FLASH_RECOVERY_AREA/orcl/onlinelog/group_4.260.570918295
+ORCL_DATA1/orcl/controlfile/current.259.570913189
+ORCL_DATA1/orcl/datafile/example.257.570913311
+ORCL_DATA1/orcl/datafile/indx.270.570920045
+ORCL_DATA1/orcl/datafile/sysaux.260.570913287
+ORCL_DATA1/orcl/datafile/system.262.570913215
+ORCL_DATA1/orcl/datafile/undotbs1.261.570913263
+ORCL_DATA1/orcl/datafile/undotbs1.271.570920865
+ORCL_DATA1/orcl/datafile/undotbs2.265.570913331
+ORCL_DATA1/orcl/datafile/undotbs2.272.570921065
+ORCL_DATA1/orcl/datafile/users.264.570913355
+ORCL_DATA1/orcl/datafile/users.269.570919829
+ORCL_DATA1/orcl/onlinelog/group_1.256.570913195
+ORCL_DATA1/orcl/onlinelog/group_2.263.570913205
+ORCL_DATA1/orcl/onlinelog/group_3.266.570918279
+ORCL_DATA1/orcl/onlinelog/group_4.267.570918289
+ORCL_DATA1/orcl/tempfile/temp.258.570913303

21 rows selected.

属于 “ORCL_DATA1” 磁盘组的所有 ASM 磁盘

FROM v$asm_disk
WHERE group_number IN (select group_number
from v$asm_diskgroup
where name = 'ORCL_DATA1');

PATH
----------------------------------
ORCL:VOL1
ORCL:VOL2

启动 / 停止 RAC 集群

确保是以 oracle UNIX 用户登录的。我们将从 rac1 节点运行所有命令:

# su – oracle

$ hostname

Rac1

停止 Oracle RAC 10g 环境

第一步是停止 Oracle 实例。当此实例(和相关服务)关闭后,关闭 ASM 实例。最后,关闭节点应用程序(虚拟 IP、GSD、TNS 监听器和 ONS)。

$ export ORACLE_SID=orcl1

$ emctl stop dbconsole

$ srvctl stop instance -d orcl -i orcl1

$ srvctl stop asm -n rac1

$ srvctl stop nodeapps –n rac1

启动 Oracle RAC 10g 环境

第一步是启动节点应用程序(虚拟 IP、GSD、TNS 监听器和 ONS)。当成功启动节点应用程序后,启动 ASM 实例。最后,启动 Oracle 实例(和相关服务)以及企业管理器数据库控制台。

$ export ORACLE_SID=orcl1

$ srvctl start nodeapps -n rac1

$ srvctl start asm -n rac1

$ srvctl start instance -d orcl -i orcl1

$ emctl start dbconsole

使用 SRVCTL 启动 / 停止所有实例

启动 / 停止所有实例及其启用的服务。我只是觉得有意思就把此步骤作为关闭所有实例的一种方法加进来了!

$ srvctl start database -d orcl

$ srvctl stop database -d orcl

启停止监听

hostb$lsnrctl start listener_hostb
hostb$lsnrctl stop listener_hostb 备份 votning diskdd if=voting_disk_name f=backup_file_name
dd if=/dev/rdsk/c4t600C0FF000000000098ADE240330A000d0s4 f=votingdisk.bak# dd if=/dev/zero f=/dev/rdsk/c4t600C0FF000000000098ADE240330A000d0s4 bs=512 count=261120
测试
# dd if=/dev/rdsk/c4t600C0FF000000000098ADE240330A000d0s4 f=/data/backup/rac/vd_backup0420.bak
261120+0 记录进入
261120+0 记录调出
# cd /data/backup/rac   
# ls
ocr0420.bak         ocrdisk             vd_backup0420.bak   votingdisk.bak      votingdisk0420.bak
# dd if=/data/backup/rac/vd_backup0420.bak f=/dev/rdsk/c4t600C0FF000000000098ADE240330A000d0s4
261120+0 记录进入
261120+0 记录调出备份 OCR 磁盘
查看备份
$ocrconfig -showbackup
备份
/data/oracle/crs/bin/ocrconfig -export /data/backup/rac/ocrdisk.bak
还原 需要停掉所有的节点,Stop the Oracle Clusterware software on all of the nodes
/data/oracle/crs/bin/ocrconfig -import file_name
自动备份的还原# /data/oracle/crs/bin/ocrconfig -showbackup
# /data/oracle/crs/bin/ocrconfig -restore /data/oracle/crs/cdata/db168crs/backup00.ocrhosta$cluvfy comp ocr -n all // 检验
ocr 检查
#ocrcheck 配置路径在
/var/opt/oracle/ocrconfig_loc 文件里面 如果需要更改 OCR 磁盘的路径配置。
OCR 磁盘空间检查
# /data/oracle/crs/bin/ocrcheck
Status of Oracle Cluster Registry is as follows :
         Version                  :          2
         Total space (kbytes)     :     399752
         Used space (kbytes)      :       3784
         Available space (kbytes) :     395968
         ID                       : 148562961
         Device/File Name         : /dev/rdsk/c4t600C0FF000000000098ADE240330A000d0s5
                                    Device/File integrity check succeeded                                    Device/File not configured         Cluster registry integrity check succeeded#

ASM 实例的状态

ASM 实例 +ASM1 正在节点 hosta 上运行。
hosta$ 特定节点上节点应用程序的状态
hosta$srvctl status nodeapps -n hosta
VIP 正在运行的节点: hosta
GSD 正在运行的节点: hosta
监听程序未在节点上运行: hosta
ONS 守护程序正在节点上运行: hosta
hosta$ 所有实例和服务的状态
hosta$srvctl status database -d cole
实例 cole1 正在节点 hosta 上运行
实例 cole2 正在节点 hostb 上运行
hosta$ 列出配置的所有数据库
hosta$srvctl config database
cole
hosta$
显示 RAC 数据库的配置 hosta$srvctl config database -d cole
hosta cole1 /data/oracle/OracleHome
hostb cole2 /data/oracle/OracleHome
hosta$ 显示 ASM 实例的配置
hosta$srvctl config asm -n hosta
+ASM1 /data/oracle/OracleHome 显示节点应用程序的配置 -(VIP、GSD、ONS、监听器)
hosta$srvctl config nodeapps -n hosta -a -g -s -l
VIP 已存在。: /a1-vip/10.1.1.9/255.255.0.0/ce0
GSD 已存在。
ONS 守护程序已存在。
监听程序已存在。
hosta$
集群中所有正在运行的实例
SELECT
inst_id
, instance_number inst_no
, instance_name inst_name
, parallel
, status
, database_status db_status
, active_state state
, host_name host
FROM gv$instance
ORDER BY inst_id;   INST_ID    INST_NO INST_NAME        PAR STATUS       DB_STATUS STATE     HOST
---------- ---------- ---------------- --- ------------ -------------------------- -
         1          1 cole1            YES OPEN         ACTIVE      NORMAL    hosta         2          2 cole2            YES OPEN         ACTIVE      NORMAL    hostb

位于磁盘组中的所有数据文件

SQL> select name from v$datafile
union
select member from v$logfile
union
select name from v$controlfile
union
select name from v$tempfile;

原文发布于微信公众号 - 数据和云(OraNews)

原文发表时间:2018-05-08

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Jerry的SAP技术分享

Kubernetes里的ConfigMap的用途

顾名思义,ConfigMap用于保存配置数据的键值对,可以用来保存单个属性,也可以用来保存配置文件。

1621
来自专栏乐沙弥的世界

Oracle AWR管理与维护

  AWR是Automatic Workload Repository的简称,中文叫着自动工作量资料档案库。对于AWR的管理,主要是针对快照和基线的管理而言。比...

960
来自专栏猿人谷

Oracle RAC基本维护指令

所有实例和服务的状态 $ srvctl status database -d orcl Instance orcl1 is running on node l...

2167
来自专栏乐沙弥的世界

Oracle 基于用户管理恢复的处理

Oracle支持多种方式来管理数据文件的备份与恢复来保证数据库的可靠与完整。除了使用RMAN工具以及第三方备份与恢复工具之外,基于

532
来自专栏社区的朋友们

MySQL Online DDL

历史上看,MySQL 在 2007 年就完成了在线索引接口的设计。而 MySQL NDB Cluster、TokuDB 都早在 5.1 版本中就支持在线索引添加...

1.5K0
来自专栏杨建荣的学习笔记

关于Flashback的小测试(r10笔记第15天)

对于Oracle的Flashback来说,在11g里面有了一个很细微的变化,可以说是一个很不错的福利,那就是开启闪回不需要重启数据库至mount状态下,...

3374
来自专栏散尽浮华

mysqldump数据导出问题和客户端授权后连接失败问题

1,使用mysqldump时报错(1064),这个是因为mysqldump版本太低与当前数据库版本不一致导致的。 mysqldump: Couldn't exe...

2389
来自专栏乐沙弥的世界

RAC 环境下修改归档模式

    RAC环境下的归档模式切换与单实例稍有不同,主要是共享存储所产生的差异。在这种情况下,我们可以将RAC数据库切换到非集群状态下,仅仅在一个实例上来实施归...

942
来自专栏搜云库

CentOs7.3 搭建 MySQL 5.7.19 主从复制,以及复制实现细节分析

CentOs7.3 搭建 MySQL 5.7.19 主从复制,以及复制实现细节分析 概念 主从复制可以使MySQL数据库主服务器的主数据库,复制到一个或多个My...

2705
来自专栏Linyb极客之路

MySQL数据库“十宗罪”(十大经典错误案例)

Too many connections(连接数过多,导致连接不上数据库,业务无法正常进行)

1332

扫码关注云+社区