ORACLE 如何单机转RAC

生产库停监听 
[oracle@primary backup1]$ lsnrctl stop 
生产库启停数据库 
shutdown immediate 
Startup mount 
 
生产库全库备份: 
rmanbackup.sh 
export ORACLE_BASE=/oracle/app 
export ORACLE_HOME=/oracle/app/product/11.2.0/db_1 
export ORACLE_SID=test 
rman target / log=/backup1/rman.log << EOF  
run{ 
backup database format '/backup1/fulldb_test_%U.bak'; 

exit 
EOF 
 
将生产库控制文件及备份片拷贝至目标端asm中 
scp fulldb_test_01uighoh_1_1.bak 192.168.142.150:/backup 
scp fulldb_test_02uighoo_1_1.bak 192.168.142.150:/backup 
scp control01.ctl 192.168.142.150:/tmp 
ASMCMD> mkdir test 
ASMCMD> cp /tmp/control01.ctl +data/test 
ASMCMD> cp control01.ctl control02.ctl 
 
建立adump路径,使用更改过的pfile将数据库启动至mount状态(一二节点都要创建哦) 
[oracle@rac1 tmp]$ export ORACLE_SID=test 
SQL> startup mount pfile='/tmp/pfile.ora'; 
 
restore数据文件 
vi rmanrestore.sh 
export ORACLE_BASE=/oracle/app 
export ORACLE_HOME=/oracle/app/product/11.2.0/db_1 
export ORACLE_SID=test 
rman target / log=/backup/rman.log << EOF  
run{ 
CATALOG BACKUPPIECE '/backup/fulldb_test_08uhucij_1_1.bak'; 
CATALOG BACKUPPIECE '/backup/fulldb_test_08uhucij_1_1.bak'; 
set newname for datafile 1 to '+data/test/system01.dbf'; 
set newname for datafile 2 to '+data/test/sysaux01.dbf'; 
set newname for datafile 3 to '+data/test/undotbs01.dbf'; 
set newname for datafile 4 to '+data/test/users01.dbf'; 
restore database;      
switch datafile all; 

exit 
EOF 
 
chmod 775 rmanrestore.sh  
恢复数据文件,确保所有数据文件均恢复出来 
关库 
 
更改参数文件 
*.audit_file_dest='/oracle/app/admin/test/adump' 
*.audit_trail='db' 
*.compatible='11.2.0.4.0' 
*.cluster_database=true 
*.control_files='+data/test/control01.ctl','+data/test/control02.ctl' 
*.db_block_size=8192 
*.db_domain='' 
*.db_name='test' 
*.diagnostic_dest='/oracle/app' 
*.dispatchers='(PROTOCOL=TCP) (SERVICE=testXDB)' 
*.job_queue_processes=0 
*.log_archive_dest_state_2='ENABLE' 
*.memory_target=490140544 
*.open_cursors=300 
*.processes=150 
*.remote_login_passwordfile='EXCLUSIVE' 
*.standby_file_management='AUTO' 
*.log_archive_dest_1='location=+data/test' 
test1.instance_number=1 
test2.instance_number=2 
*.log_archive_dest_1='location=+data' 
*.remote_listener='rac-scan:1521' 
test2.thread=2 
test1.thread=1 
test2.undo_tablespace='UNDOTBS2' 
test1.undo_tablespace='UNDOTBS1' 
 
使用新的参数文件将数据库启动至mount状态 
[oracle@rac1 tmp]$ export ORACLE_SID=test1 
[oracle@rac1 tmp]$ sqlplus / as sysdba 
SQL> startup mount pfile='/tmp/pfiletest.ora'; 
 
创建一节点日志组 
alter database add logfile  thread 1   group 10 '+DATA' size 50M; 
alter database add logfile  thread 1   group 11 '+DATA' size 50M; 
alter database add logfile  thread 1   group 12 '+DATA' size 50M; 
select GROUP#,THREAD#,bytes/1024/1024,status from v$log; 
 
删除掉原库状态为inactive的日志组 
只将原库状态为CURRENT的日志组拷贝至目标端asm中 
alter database drop logfile group 1; 
alter database drop logfile group 3; 
scp redo02.log 192.168.142.150:/backup/ 
ASMCMD> cp /backup/redo02.log +data/test 
 
rename日志文件 
alter database rename file '/oracle/oradata/test/redo02.log' to '+DATA/test/redo02.log'; 
 
recover database; 
alter database open; 
 
增加二节点日志组 
alter database add logfile  thread 2   group 13 '+DATA' size 50M; 
alter database add logfile  thread 2   group 14 '+DATA' size 50M; 
alter database add logfile  thread 2   group 15 '+DATA' size 50M; 
select GROUP#,THREAD#,bytes/1024/1024,status from v$log; 
 
删除原有日志组 
alter database drop logfile group 2; 
 
添加二节点undo 
create undo tablespace undotbs2 datafile '+DATA/test/undotbs02.dbf' size 10M autoextend on; 
 
激活二节点undo 
alter database enable thread 2; 
 
刷新rac组件 
spool on  
spool catclust.txt 
@?/rdbms/admin/catclust.sql 
spool off 
select comp_name,version,status from dba_registry 
 
修改参数文件 
create spfile='+data/test/spfiletest.ora' from pfile='/tmp/pfiletest.ora'; 
cd $ORACLE_HOME/dbs 
vi inittest1.ora 
SPFILE='+DATA/test/spfiletest.ora' 
 
cd $ORACLE_HOME/dbs 
vi inittest2.ora 
SPFILE='+DATA/test/spfiletest.ora' 
 
关闭数据库,重启双节点实例 
 
将新的实例添加至集群服务中 
[oracle@rac1 ~]$ srvctl add database -d test -o /oracle/app/product/11.2.0/db_1  
[oracle@rac1 ~]$ srvctl add instance -d test -i test1 -n rac1 
[oracle@rac1 ~]$ srvctl add instance -d test -i test2 -n rac2 
 
数据库参数优化 
修改db_files 的值 
alter system set db_files=1024 scope=spfile sid=’*’; 
 
密码过期时间,从11g开始,oracle对数据库所有密码默认过期时间180天: 
SQL> alter profile default limit  PASSWORD_LIFE_TIME unlimited; 
 
密码登陆错误次数,对于输入错误密码导致数据库账号被锁定: 
SQL> alter profile default limit  FAILED_LOGIN_ATTEMPTS unlimited; 
 
密码大小写敏感,该参数默认值是TRUE,因此,默认情况下密码大小写是敏感的 
SQL> alter system set SEC_CASE_SENSITIVE_LOGON=false sid='*'; 
 
密码错误延迟登录,11G引入了延迟密码验证,在输入错误的密码后,后续如果还是采用错误的密码登陆,将会导致密码延迟验证,从第三次开始,后续的每次登陆导致密码延迟1秒左右 
而且会导致失败登陆延长,可以通过如下事件来屏蔽密码的延迟验证 
SQL> ALTER SYSTEM SET event='28401 TRACE NAME CONTEXT FOREVER, LEVEL 1' SCOPE=SPFILE SID='*'; 
 
Oracle的审计从11g开始,默认为开启,建议关闭: 
SQL> alter system set audit_trail=none scope=spfile sid='*'; 
 
关闭Resource Manager该特性为11g新特性,用来给特定的资源组分配指定的CPU配额,容易引起等待事件:RESMGR:cpu quantum,导致数据库响应慢。CPU耗尽 
ALTER SYSTEM SET "_resource_manager_always_on"=FALSE SCOPE=SPFILE SID='*'; 
alter system set "_resource_manager_always_off"=true scope=spfile SID='*'; 
execute dbms_scheduler.set_attribute('SATURDAY_WINDOW','RESOURCE_PLAN','');  
execute dbms_scheduler.set_attribute('SUNDAY_WINDOW','RESOURCE_PLAN',''); 
execute dbms_scheduler.set_attribute('MONDAY_WINDOW','RESOURCE_PLAN','');  
execute dbms_scheduler.set_attribute('TUESDAY_WINDOW','RESOURCE_PLAN',''); 
execute dbms_scheduler.set_attribute('WEDNESDAY_WINDOW','RESOURCE_PLAN','');  
execute dbms_scheduler.set_attribute('THURSDAY_WINDOW','RESOURCE_PLAN',''); 
execute dbms_scheduler.set_attribute('FRIDAY_WINDOW','RESOURCE_PLAN',''); 
 
ALTER SYSTEM SET deferred_segment_creation=FALSE SCOPE=SPFILE SID='*'; 
 
ALTER SYSTEM SET parallel_force_local=TRUE SCOPE=BOTH; 
 
alter system  set "_serial_direct_read"=never scope=spfile sid='*'; 
 
alter system set "_external_scn_rejection_threshold_hours"=1 scope=spfile sid='*'; 
alter system set "_external_scn_logging_threshold_seconds"=600 scope=spfile sid='*'; 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/225178.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux 常用解压命令tar和zip(详细篇)

# tar 入门 介绍 在Linux平台上,tar 命令是主要的归档实用程序。了解各种 tar 命令选项将帮助您掌握归档文件操作。tar 代表磁带存档。 语法 tar [-ABcdgGhiklmMoOpPrRsStuUvwWxzZ][-C <目的目录>][-f <备份文件>][--delete][--totals][文件或目录...] 以前 un…

使用opencv的Laplacian算子实现图像边缘检测

1 边缘检测介绍 图像边缘检测技术是图像处理和计算机视觉等领域最基本的问题&#xff0c;也是经典的技术难题之一。如何快速、精确地提取图像边缘信息&#xff0c;一直是国内外的研究热点&#xff0c;同时边缘的检测也是图像处理中的一个难题。早期的经典算法包括边缘算子方法…

Linux的文件系统 内核结构

Linux的文件系统 Q1&#xff1a;什么是文件系统&#xff1f; A&#xff1a;在学术的角度下&#xff0c;文件系统指“操作系统用于明确存储设备组织文件的方法”&#xff0c;是“文件管理系统”的简称&#xff0c;本质也是代码&#xff0c;一段程序 Q2&#xff1a;文件系统&…

Java带缓存的单向链表-线程安全

开发原因 ArrayList太重&#xff0c;线程还不安全 在一些队列处理的时候&#xff0c;ArrayList有点麻烦&#xff0c;还比较占内存&#xff0c;还没缓存&#xff0c;又得再加个缓存队列 所以就开发了这个 轻量级&#xff0c;线程安全&#xff0c;带缓存&#xff01;nice!! 源码…

Elasticsearch:相关性工作台 - BM25 及 ELSER 的相关性比较

我们知道 Elastics Learned Sparse EncoderR (ELSER) 可以被用来做语义搜索。它是一个 out-of-domain 的语义搜索模型。无需训练&#xff0c;我们就可以得到很好的相关性。有关 ELSER 的更多知识&#xff0c;请参考文章 “Elastic Learned Sparse Encoder 简介&#xff1a;Elas…

Mac下ERROR: Cannot connect to the Docker daemon

解决Mac下ERROR: Cannot connect to the Docker daemon at unix:///Users/qq/.orbstack/run/docker.sock. Is the docker daemon running? 在Mac系统的中, 如果实际已经安装docker并且已经启动了. 但执行 docker info 时 报错: ERROR: Cannot connect to the Docker daemon …

SpringMVC映射请求数据

1、获取超链接的参数和值 <a href"vote/vote01?namelove">获取超链接的参数</a> //获取超链接的参数RequestMapping(value "/vote01")public String vote01(RequestParam(value "name", requiredfalse) String name){System.out…

4-Docker命令之docker cp

1.docker cp介绍 docker cp命令是用于在本地宿主机文件系统与docker容器(状态:运行中/停止)之间复制文件或文件夹 2.docker cp用法 docker cp [OPTIONS] CONTAINER:SRC_PATH DEST_PATH|- docker cp [OPTIONS] SRC_PATH|- CONTAINER:DEST_PATH [root@centos79 ~]# docker …

如何使用PHP进行数据加密和解密?

在 PHP 中&#xff0c;你可以使用加密算法和相关的扩展库来进行数据加密和解密。以下是使用 PHP 进行数据加密和解密的基本示例&#xff1a; 使用 OpenSSL 扩展进行加密和解密&#xff1a; 加密&#xff1a; <?php $data "Hello, World!"; $key openssl_rando…

jenkins-Generic Webhook Trigger指定分支构建

文章目录 1 需求分析1.1 关键词 : 2、webhooks 是什么&#xff1f;3、配置步骤3.1 github 里需要的仓库配置&#xff1a;3.2 jenkins 的主要配置3.3 option filter配置用于匹配目标分支 实现指定分支构建 1 需求分析 一个项目一般会开多个分支进行开发&#xff0c;测试&#x…

网络入门---可变参数原理和日志模拟实现

目录标题 前言有关函数的几个性质介绍可变参数的用法介绍可变参数的一个注意事项可变参数的底层原理va_listva_endva_startva_arg_INTSIZEOF 可变参数的注意事项日志的实现日志的测试 前言 在上一篇文章中我们介绍了TCP协议有关的函数&#xff0c;大致就是服务端先通过listen函…

oracle 如何把数据库 date 日期格式 的数据 改成 2021-01-27

如果您要将日期"27-12月-29"更改为"2021-01-27"格式&#xff0c;您可以使用Oracle的日期格式化函数和字符串替换函数来实现。 以下是一个示例SQL语句&#xff0c;将日期"27-12月-29"更改为"2021-01-27"格式&#xff1a; sql UPDATE…

Springboot的火车票订票系统(有报告)。Javaee项目,springboot项目。

演示视频&#xff1a; Springboot的火车票订票系统&#xff08;有报告&#xff09;。Javaee项目&#xff0c;springboot项目。 项目介绍&#xff1a; 采用M&#xff08;model&#xff09;V&#xff08;view&#xff09;C&#xff08;controller&#xff09;三层体系结构&#…

C_13练习题答案

一、单项选择题(本大题共20小题,每小题2分,共40分。在每小题给出的四个备选项中,选出一个正确的答案,并将所选项前的字母填写在答题纸的相应位置上 以下叙述不正确的是(C)。A.C程序中,语句之间必须用分号分隔。 B.C程序中,多行语句可以写在一行上。 C.C程序中,可以不必包…

通过对象轮换实现 LRU 缓存结构

文章目录 通过两个对象轮换&#xff0c;按照是否访问实现内容长久保存rollup 的缓存实现 export default function (max) { //max 缓存容量var num, curr, prev;var limit max || 1;function keep(key, value) {if (num > limit) {prev curr; // 超过容量时当前对象变成缓…

什么是供应链安全及其工作原理?

6000公里长的丝绸之路将丝绸、谷物和其他货物从中国运送到帕尔米拉。尽管蒙古治下的和平保护丝绸之路免受海盗、强盗和内部盗窃的侵害&#xff0c;但商人仍然装备精良&#xff0c;并依赖于大型商队旅行和战略性放置的小型堡垒所提供的安全。 为什么供应链安全很重要&#xff1…

AE-制作科技感穿梭隧道

目录 1.新建合成命名为隧道 2.在合成中新建纯色层命名为五边形隧道

代码随想录刷题题Day14

刷题的第十四天&#xff0c;希望自己能够不断坚持下去&#xff0c;迎来蜕变。&#x1f600;&#x1f600;&#x1f600; 刷题语言&#xff1a;C Day14 任务 ● 110.平衡二叉树 ● 257. 二叉树的所有路径 ● 404.左叶子之和 1 平衡二叉树 二叉树节点的深度&#xff1a;指从根节…

Unity项目优化案例二

本文地址&#xff1a;https://blog.csdn.net/t163361/article/details/135024136 针对工作中遇到的优化问题&#xff0c;记录一下&#xff0c;给大家优化自己的项目提供一些思路。 公司产品最近正给国内某大型赛事做支撑服务暴露出不少问题。 使用环境 Unity 2021.3.0f1 cpu…

新手HTML和CSS的常见知识点

​​​​ 目录 1.HTML标题标签&#xff08;到&#xff09;用于定义网页中的标题&#xff0c;并按照重要性递减排列。例如&#xff1a; 2.HTML段落标签&#xff08;&#xff09;用于定义网页中的段落。例如&#xff1a; 3.HTML链接标签&#xff08;&#xff09;用于创建链接…