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

数据库 Oracle
本文主要分享一些Oracle RAC日常基本维护命令,希望对你有所帮助。

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

所有实例和服务的状态

  1. $ srvctl status database -d orcl 
  2.  
  3. Instance orcl1 is running on node linux1 
  4.  
  5. Instance orcl2 is running on node linux2  

单个实例的状态

  1. $ srvctl status instance -d orcl -i orcl2 
  2.  
  3. Instance orcl2 is running on node linux2  

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

  1. $ srvctl status service -d orcl -s orcltest 
  2.  
  3. Service orcltest is running on instance(s) orcl2, orcl1  

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

  1. $ srvctl status nodeapps -n linux1 
  2.  
  3. VIP is running on node: linux1 
  4.  
  5. GSD is running on node: linux1 
  6.  
  7. Listener is running on node: linux1 
  8.  
  9. ONS daemon is running on node: linux1  

ASM 实例的状态

  1. $ srvctl status asm -n linux1 
  2.  
  3. ASM instance +ASM1 is running on node linux1. 

列出配置的所有数据库

  1. $ srvctl config database 
  2.  
  3. orcl  

显示 RAC 数据库的配置

  1. $ srvctl config database -d orcl 
  2.  
  3. linux1 orcl1 /u01/app/oracle/product/10.2.0/db_1 
  4.  
  5. linux2 orcl2 /u01/app/oracle/product/10.2.0/db_1  

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

  1. $ srvctl config service -d orcl 
  2.  
  3. orcltest PREF: orcl2 orcl1 AVAIL:  

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

  1. $ srvctl config nodeapps -n linux1 -a -g -s -l 
  2.  
  3. VIP exists.: /linux1-vip/192.168.1.200/255.255.255.0/eth0:eth1 
  4.  
  5. GSD exists. 
  6.  
  7. ONS daemon exists. 
  8.  
  9. Listener exists.  

显示 ASM 实例的配置

  1. $ srvctl config asm -n linux1 
  2.  
  3. +ASM1 /u01/app/oracle/product/10.2.0/db_1  

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

  1. inst_id, instance_number inst_no, instance_name inst_name, parallel, status, database_status db_status, active_state state, host_name hostFROM gv$instanceORDER BY inst_id;INST_ID INST_NO INST_NAME PAR STATUS DB_STATUS STATE HOST-------- -------- ---------- --- ------- ------------ --------- -------1 1 orcl1 YES OPEN ACTIVE NORMAL rac12 2 orcl2 YES OPEN ACTIVE NORMAL rac2 

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

  1. union 
  2. select  member  from  v$logfile 
  3. union 
  4. select  name  from  v$controlfile 
  5. union 
  6. select  name  from  v$tempfile; 
  7. NAME 
  8. ------------------------------------------- 
  9. +FLASH_RECOVERY_AREA/orcl/controlfile/current.258.570913191 
  10. +FLASH_RECOVERY_AREA/orcl/onlinelog/group_1.257.570913201 
  11. +FLASH_RECOVERY_AREA/orcl/onlinelog/group_2.256.570913211 
  12. +FLASH_RECOVERY_AREA/orcl/onlinelog/group_3.259.570918285 
  13. +FLASH_RECOVERY_AREA/orcl/onlinelog/group_4.260.570918295 
  14. +ORCL_DATA1/orcl/controlfile/current.259.570913189 
  15. +ORCL_DATA1/orcl/datafile/example.257.570913311 
  16. +ORCL_DATA1/orcl/datafile/indx.270.570920045 
  17. +ORCL_DATA1/orcl/datafile/sysaux.260.570913287 
  18. +ORCL_DATA1/orcl/datafile/system.262.570913215 
  19. +ORCL_DATA1/orcl/datafile/undotbs1.261.570913263 
  20. +ORCL_DATA1/orcl/datafile/undotbs1.271.570920865 
  21. +ORCL_DATA1/orcl/datafile/undotbs2.265.570913331 
  22. +ORCL_DATA1/orcl/datafile/undotbs2.272.570921065 
  23. +ORCL_DATA1/orcl/datafile/users.264.570913355 
  24. +ORCL_DATA1/orcl/datafile/users.269.570919829 
  25. +ORCL_DATA1/orcl/onlinelog/group_1.256.570913195 
  26. +ORCL_DATA1/orcl/onlinelog/group_2.263.570913205 
  27. +ORCL_DATA1/orcl/onlinelog/group_3.266.570918279 
  28. +ORCL_DATA1/orcl/onlinelog/group_4.267.570918289 
  29. +ORCL_DATA1/orcl/tempfile/temp.258.570913303 
  30. 21 rows selected. 

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

  1. FROM v$asm_disk 
  2. WHERE group_number IN ( 
  3. select 
  4.  group_number 
  5. from 
  6.  v$asm_diskgroup 
  7. where  name =  'ORCL_DATA1' ); 
  8. PATH 
  9. ---------------------------------- 
  10. ORCL:VOL1 
  11. ORCL:VOL2 

启动 / 停止 RAC 集群

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

  1. # su – oracle 
  2.  
  3. $ hostname 
  4.  
  5. Rac1  

停止 Oracle RAC 10g 环境

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

  1. $ export ORACLE_SID=orcl1 
  2.  
  3. $ emctl stop dbconsole 
  4.  
  5. $ srvctl stop instance -d orcl -i orcl1 
  6.  
  7. $ srvctl stop asm -n rac1 
  8.  
  9. $ srvctl stop nodeapps –n rac1  

启动 Oracle RAC 10g 环境

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

  1. $ export ORACLE_SID=orcl1 
  2.  
  3. $ srvctl start nodeapps -n rac1 
  4.  
  5. $ srvctl start asm -n rac1 
  6.  
  7. $ srvctl start instance -d orcl -i orcl1 
  8.  
  9. $ emctl start dbconsole  

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

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

  1. $ srvctl start database -d orcl 
  2.  
  3. $ srvctl stop database -d orcl  

启停止监听

  1. hostb$lsnrctl start listener_hostb 
  2. 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 
  3. 测试 
  4. # dd if=/dev/rdsk/c4t600C0FF000000000098ADE240330A000d0s4 f=/data/backup/rac/vd_backup0420.bak 
  5. 261120  记录进入
  6. 261120  记录调出 
  7. # cd /data/backup/rac 
  8. # ls 
  9. ocr0420.bak         ocrdisk             vd_backup0420.bak   votingdisk.bak      votingdisk0420.bak 
  10. # dd if=/data/backup/rac/vd_backup0420.bak f=/dev/rdsk/c4t600C0FF000000000098ADE240330A000d0s4 
  11. 261120 0 记录进入 
  12. 261120 记录调出
  13. 备份 OCR 磁盘 
  14. 查看备份 
  15. $ocrconfig -showbackup 
  16. 备份 
  17. /data/oracle/crs/bin/ocrconfig - export  /data/backup/rac/ocrdisk.bak 
  18. 还原 需要停掉所有的节点, Stop  the  Oracle Clusterware  software on all of the nodes 
  19. /data/oracle/crs/bin/ocrconfig - import  file_name 
  20. 自动备份的还原# /data/oracle/crs/bin/ocrconfig -showbackup 
  21. # /data/oracle/crs/bin/ocrconfig -restore /data/oracle/crs/cdata/db168crs/backup00.ocrhosta$cluvfy comp ocr -n all // 检验 
  22. ocr 检查 
  23. #ocrcheck 配置路径在 
  24. var /opt/oracle/ocrconfig_loc 文件里面 如果需要更改 OCR 磁盘的路径配置。 
  25. OCR 磁盘空间检查 
  26. # /data/oracle/crs/bin/ocrcheck 
  27. Status  of Oracle Cluster Registry is as follows : 
  28.           
  29. Version 
  30.           
  31. Total space (kbytes)     :     399752 
  32.           
  33. Used  space (kbytes)      :   3784 
  34.           
  35. Available  space (kbytes) :  395968 
  36.          ID                    :  148562961 
  37.           
  38. Device File Name          :  /dev/ rdsk/c4t600C0FF000000000098ADE240330A000d0s5 
  39.                                      
  40. Device File  integrity check succeeded Device File not  configured Cluster  registry integrity check succeeded 

ASM 实例的状态

  1. ASM 实例 +ASM1 正在节点 hosta 上运行。 
  2. hosta$ 特定节点上节点应用程序的状态 
  3. hosta$srvctl status nodeapps -n hosta 
  4. VIP 正在运行的节点: hosta 
  5. GSD 正在运行的节点: hosta 
  6. 监听程序未在节点上运行: hosta 
  7. ONS 守护程序正在节点上运行: hosta 
  8. hosta$ 所有实例和服务的状态 
  9. hosta$srvctl status database -d cole 
  10. 实例 cole1 正在节点 hosta 上运行 
  11. 实例 cole2 正在节点 hostb 上运行 
  12. hosta$ 列出配置的所有数据库 
  13. hosta$srvctl config database 
  14. cole 
  15. hosta$ 
  16. 显示 RAC 数据库的配置 hosta$srvctl config database -d cole 
  17. hosta cole1 /data/oracle/OracleHome 
  18. hostb cole2 /data/oracle/OracleHome 
  19. hosta$ 显示 ASM 实例的配置 
  20. hosta$srvctl config asm -n hosta 
  21. +ASM1 /data/oracle/OracleHome 显示节点应用程序的配置 -(VIP、GSD、ONS、监听器) 
  22. hosta$srvctl config nodeapps -n hosta -a -g -s -l 
  23. VIP 已存在。: /a1-vip/10.1.1.9/255.255.0.0/ce0 
  24. GSD 已存在。 
  25. ONS 守护程序已存在。 
  26. 监听程序已存在。 
  27. hosta$ 
  28. 集群中所有正在运行的实例 
  29. SELECT inst_id, instance_number inst_no, instance_name inst_name, parallel, status, database_status db_status, active_state state, host_name host 
  30. FROM gv$instance 
  31. ORDER BY inst_id;   INST_ID    INST_NO INST_NAME        PAR STATUS       DB_STATUS STATE     HOST 
  32. ---------- ---------- ---------------- --- ------------ -------------------------- - 
  33.           
  34.      1 cole1            YES OPEN         ACTIVE      NORMAL    hosta          
  35. 2      cole2            YES OPEN         ACTIVE      NORMAL    hostb 

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

  1. SQL>select  name from v$datafile 
  2. union 
  3. select member from v$logfile 
  4. union 
  5. select name from v$controlfile 
  6. union 
  7. select name from v$tempfile; 
责任编辑:庞桂玉 来源: Oracle疑点通
相关推荐

2019-06-12 10:15:19

运维开发Linux

2015-07-21 05:55:12

2015-08-24 10:01:00

Windows 10升级

2020-11-30 13:12:04

Linux文本命令

2010-04-16 17:09:18

Oracle查看锁

2024-03-21 08:57:39

语言软件开发

2014-06-20 14:35:48

浪潮数据

2015-07-30 17:30:43

Linux命令

2011-04-29 11:26:09

短焦投影

2018-11-16 11:03:34

Java乐观锁无锁

2010-06-11 14:46:38

可路由协议

2022-02-16 08:01:45

网络安全趋势

2010-06-12 15:03:57

路由协议

2021-01-28 10:17:54

人工智能AI机器学习

2023-07-06 14:08:54

ChatGPTLLM大型语言模型

2015-01-15 09:34:28

2011-05-30 14:05:04

2022-08-17 15:09:08

区块链加密货币NFT

2011-04-25 09:45:09

C#委托

2012-03-20 15:06:12

Linux服务器服务器监控
点赞
收藏

51CTO技术栈公众号