Oracle Rac to Rac One Node
=~=~=~=~=~=~=~=~=~=~=~= PuTTY log 2020.01.14 20:05:12 =~=~=~=~=~=~=~=~=~=~=~= [oracle@rac01 ~]$ srvctl status database -d racdb Instance racdb1 is running on node rac01 Instance racdb2 is running on node rac02 [oracle@rac01 ~]$ srvctl config database -d racdb Database unique name: racdb Database name: racdb Oracle home: /oracle/home Oracle user: oracle Spfile: +DGDATA/racdb/spfileracdb.ora Domain: Start options: open Stop options: immediate Database role: PRIMARY Management policy: AUTOMATIC Server pools: racdb Database instances: racdb1,racdb2 Disk Groups: DGDATA Mount point paths: Services: Type: RAC Database is administrator managed [oracle@rac01 ~]$ srvctl config service -d racdb [oracle@rac01 ~]$ srvctl stop database -d racdb [oracle@rac01 ~]$ srvctl status database -d racdb Instance racdb1 is not running on node rac01 Instance racdb2 is not running on node rac02 [oracle@rac01 ~]$ srvctl remove instance -d racdb -i racdb2 Remove instance from the database racdb? (y/[n]) y [oracle@rac01 ~]$ srvctl add service -d racdb -s rac -r racdb1 -P BASIC -e SELECT -m BASIC -y AUTOMATIC [oracle@rac01 ~]$ srvctl config service -d racdb Service name: rac Service is enabled Server pool: racdb_rac Cardinality: 1 Disconnect: false Service role: PRIMARY Management policy: AUTOMATIC DTP transaction: false AQ HA notifications: false Failover type: SELECT Failover method: BASIC TAF failover retries: 0 TAF failover delay: 0 Connection Load Balancing Goal: LONG Runtime Load Balancing Goal: NONE TAF policy specification: BASIC Edition: Preferred instances: racdb1 Available instances: [oracle@rac01 ~]$ srvctl start service -d racdb -s rac [oracle@rac01 ~]$ srvctl status database -d racdb Instance racdb1 is running on node rac01 [oracle@rac01 ~]$ srvctl convert database -d racdb -c RACONENODE -i racdb1 [oracle@rac01 ~]$ srvctl config database -d racdb Database unique name: racdb Database name: racdb Oracle home: /oracle/home Oracle user: oracle Spfile: +DGDATA/racdb/spfileracdb.ora Domain: Start options: open Stop options: immediate Database role: PRIMARY Management policy: AUTOMATIC Server pools: racdb Database instances: Disk Groups: DGDATA Mount point paths: Services: rac Type: RACOneNode Online relocation timeout: 30 Instance name prefix: racdb1 Candidate servers: rac01 Database is administrator managed [oracle@rac01 ~]$ srvctl config service -d racdb Service name: rac Service is enabled Server pool: racdb Cardinality: 1 Disconnect: false Service role: PRIMARY Management policy: AUTOMATIC DTP transaction: false AQ HA notifications: false Failover type: SELECT Failover method: BASIC TAF failover retries: 0 TAF failover delay: 0 Connection Load Balancing Goal: LONG Runtime Load Balancing Goal: NONE TAF policy specification: BASIC Edition: Preferred instances: racdb1_1 Available instances: [oracle@rac01 ~]$ ps -ef|grep smon root 2512 1 1 Jan12 ? 00:33:13 /grid/home/bin/osysmond.bin grid 2960 1 0 Jan12 ? 00:00:04 asm_smon_+ASM1 oracle 29723 1 0 17:19 ? 00:00:00 ora_smon_racdb1 oracle 30301 28630 0 17:21 pts/0 00:00:00 grep smon [oracle@rac01 ~]$ srvctl stop database -d racdb [oracle@rac01 ~]$ srvctl start database -d racdb [oracle@rac01 ~]$ ps -ef|grep smon root 2512 1 1 Jan12 ? 00:33:14 /grid/home/bin/osysmond.bin grid 2960 1 0 Jan12 ? 00:00:04 asm_smon_+ASM1 oracle 30591 1 0 17:21 ? 00:00:00 ora_smon_racdb1_1 oracle 30724 28630 0 17:22 pts/0 00:00:00 grep smon [oracle@rac01 ~]$ srvctl relocate database -d racdb -n rac02 [oracle@rac01 ~]$ crsctl stat res -t -bash: crsctl: command not found [oracle@rac01 ~]$ su - grid Password: [grid@rac01 ~]$ crs_stat -t Name Type Target State Host ------------------------------------------------------------ ora.DGDATA.dg ora....up.type ONLINE ONLINE rac01 ora....ER.lsnr ora....er.type ONLINE ONLINE rac01 ora....N1.lsnr ora....er.type ONLINE ONLINE rac02 ora.OGOCR.dg ora....up.type ONLINE ONLINE rac01 ora.asm ora.asm.type ONLINE ONLINE rac01 ora.cvu ora.cvu.type ONLINE ONLINE rac02 ora.gsd ora.gsd.type OFFLINE OFFLINE ora....network ora....rk.type ONLINE ONLINE rac01 ora.oc4j ora.oc4j.type ONLINE ONLINE rac02 ora.ons ora.ons.type ONLINE ONLINE rac01 ora....SM1.asm application ONLINE ONLINE rac01 ora....01.lsnr application ONLINE ONLINE rac01 ora.rac01.gsd application OFFLINE OFFLINE ora.rac01.ons application ONLINE ONLINE rac01 ora.rac01.vip ora....t1.type ONLINE ONLINE rac01 ora....SM2.asm application ONLINE ONLINE rac02 ora....02.lsnr application ONLINE ONLINE rac02 ora.rac02.gsd application OFFLINE OFFLINE ora.rac02.ons application ONLINE ONLINE rac02 ora.rac02.vip ora....t1.type ONLINE ONLINE rac02 ora.racdb.db ora....se.type ONLINE ONLINE rac02 ora....rac.svc ora....ce.type ONLINE ONLINE rac02 ora....ry.acfs ora....fs.type ONLINE ONLINE rac01 ora.scan1.vip ora....ip.type ONLINE ONLINE rac02 [grid@rac01 ~]$ srvctl relocate database -d racdb -n rac01 PRCD-1222 : Online relocation of database "racdb" failed but database was restored to its original state PRCR-1037 : Failed to update cardinality of the resource ora.racdb.db to 2 PRCR-1071 : Failed to register or update resource ora.racdb.db CRS-0245: User doesn't have enough privilege to perform the operation [grid@rac01 ~]$ exit logout [oracle@rac01 ~]$ srvctl relocate database -d racdb -n rac01 [oracle@rac01 ~]$ su - grid Password: [grid@rac01 ~]$ crs_stat -t Name Type Target State Host ------------------------------------------------------------ ora.DGDATA.dg ora....up.type ONLINE ONLINE rac01 ora....ER.lsnr ora....er.type ONLINE ONLINE rac01 ora....N1.lsnr ora....er.type ONLINE ONLINE rac02 ora.OGOCR.dg ora....up.type ONLINE ONLINE rac01 ora.asm ora.asm.type ONLINE ONLINE rac01 ora.cvu ora.cvu.type ONLINE ONLINE rac02 ora.gsd ora.gsd.type OFFLINE OFFLINE ora....network ora....rk.type ONLINE ONLINE rac01 ora.oc4j ora.oc4j.type ONLINE ONLINE rac02 ora.ons ora.ons.type ONLINE ONLINE rac01 ora....SM1.asm application ONLINE ONLINE rac01 ora....01.lsnr application ONLINE ONLINE rac01 ora.rac01.gsd application OFFLINE OFFLINE ora.rac01.ons application ONLINE ONLINE rac01 ora.rac01.vip ora....t1.type ONLINE ONLINE rac01 ora....SM2.asm application ONLINE ONLINE rac02 ora....02.lsnr application ONLINE ONLINE rac02 ora.rac02.gsd application OFFLINE OFFLINE ora.rac02.ons application ONLINE ONLINE rac02 ora.rac02.vip ora....t1.type ONLINE ONLINE rac02 ora.racdb.db ora....se.type ONLINE ONLINE rac01 ora....rac.svc ora....ce.type ONLINE ONLINE rac01 ora....ry.acfs ora....fs.type ONLINE ONLINE rac01 ora.scan1.vip ora....ip.type ONLINE ONLINE rac02 [grid@rac01 ~]$ exit logout [oracle@rac01 ~]$ exit logout
1.删除实例的时候,要保留一个实例,如果两个都删除,新建的实例会因为没有spfile起不来
2.转换后实例在一节点上会变成racdb1_1,在二节点上会变成racdb1_2,并会在spfile中自动加入
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 使用C#创建一个MCP客户端
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 按钮权限的设计及实现