首页
3D照片墙
统计
留言
Search
1
1.OAuth 的简单理解
115 阅读
2
多个拦截器的执行顺序
105 阅读
3
基于Annotation方式的声明式事务
102 阅读
4
6.设计模式汇总
101 阅读
5
Unity 依赖注入
98 阅读
Java
JDBC
Spring
Spring MVC
SpringBoot
SpringCloud
MybatisPlus
Mybatis
Maven
SpringSecurity
JVM
java注解与反射
Java JUC并发编程
SSM
.NET
IdentityServer4
EF
.Net Core
AbpVNext + DDD
.NET MVC Api
前端
Jquery&JavaScript
uniapp
VUE
Echars
Vue底层原理
Python
Django
软考笔记
软件设计师
1.计算机组成与体系结构
10.面向对象技术
11.UML类图建模
12.面向对象程序设计
13.数据结构
14.算法基础
16.知识产权标准化
17.程序设计语言
2.操作系统
3.数据库
4.数据库设计
5.计算机网络
6.信息安全
7.系统开发基础
8.项目管理
9.数据流图
架构设计
CQRS架构
DDD架构
数据库技术
SQL锁
SqlServer
Oracle 主从备份
Oracle RAC集群
Mysql
云原生/容器技术
kubernetes
Docker
数据结构与算法
常用中间件
Redis
RabbitMQ 消息队列
ElasticSearch
其他
PHP
OAuth 2.0
WebSocket
ArkTs Harmony 开发
运维
Search
标签搜索
排序算法
vue
算法
遍历
docker
线性
数组
dom
synchronized
数据库
xml语言
log4j
bigint
静态函数
静态方法
哈夫曼树
const
冒泡排序
商标设计
命令模式
Bi8bo
累计撰写
304
篇文章
累计收到
6
条评论
首页
栏目
Java
JDBC
Spring
Spring MVC
SpringBoot
SpringCloud
MybatisPlus
Mybatis
Maven
SpringSecurity
JVM
java注解与反射
Java JUC并发编程
SSM
.NET
IdentityServer4
EF
.Net Core
AbpVNext + DDD
.NET MVC Api
前端
Jquery&JavaScript
uniapp
VUE
Echars
Vue底层原理
Python
Django
软考笔记
软件设计师
1.计算机组成与体系结构
10.面向对象技术
11.UML类图建模
12.面向对象程序设计
13.数据结构
14.算法基础
16.知识产权标准化
17.程序设计语言
2.操作系统
3.数据库
4.数据库设计
5.计算机网络
6.信息安全
7.系统开发基础
8.项目管理
9.数据流图
架构设计
CQRS架构
DDD架构
数据库技术
SQL锁
SqlServer
Oracle 主从备份
Oracle RAC集群
Mysql
云原生/容器技术
kubernetes
Docker
数据结构与算法
常用中间件
Redis
RabbitMQ 消息队列
ElasticSearch
其他
PHP
OAuth 2.0
WebSocket
ArkTs Harmony 开发
运维
页面
3D照片墙
统计
留言
搜索到
2
篇与
的结果
2022-07-31
教程
https://www.cnblogs.com/djlsunshine/p/11329028.html 注意文档中有坑,djl写成dj1有的地方 从库连不上报错 initialization or shutdown in progress. https://blog.csdn.net/dbangelica/article/details/86217958
2022年07月31日
34 阅读
0 评论
6 点赞
2022-04-10
Oracle DG主从方案
Oracle DG主从备份操作手册 2024 年 **09 月 23 **日 版本号 修改日期 修改人 更新内容 V1.0 2024.09.23 肖霄 Oracle DG主从备份操作手册 1、服务运行环境 5 1.1、数据库服务环境要求 5 1.2、应用服务器环境要求 5 2、Oracle 数据库安装 5 2.1、Oracle11g 主数据库安装 5 2.1.1、程序准备 5 2.1.2、安装步骤 5 2. Oracle11g 从数据库安装 11 2.2.1、程序准备 11 2.2.2、安装步骤 11 3、安装位置 11 4、配置dataguard主从库 12 主库操作检查数据库,开启归档模式,如下图所示: 12 为备库添加日志组(在主库mount状态下执行) 13 3、主备库配置网络监听 14 4、重启监听服务 19 5、使用tnsping检查监听及服务命名 20 6、主备库创建相关目录,详述如下 22 7、为主备库准备参数文件 22 8、密码文件配置 25 9、 控制文件配置 25 10、创建备库实例djl,在备库服务器执行创建 25 11、主备库的启动 25 12、使用rman连接主备库 28 13、为备库备份参数文件 28 14、将主库数据库复制到备库 29 15、将备库设置为接受日志模式 29 5、 后期维护 30 6、启动从库,同步因停机未同步的归档日志 31 1、服务运行环境 1.1、数据库服务环境要求 ◇ Windows Server 2019 Datacenter (2台,一主一从) ◇ 内网网络 1.2、应用服务器环境要求 ◇ Oracle11g64Bit 客户端环境 ◇ 网络运行环境(同时内外网网络,根据支付通道要求具 体进行确定) 2、Oracle 数据库安装 2.1、Oracle11g 主数据库安装 2.1.1、程序准备 ◇Oracle11g 64 位安装包 ◇Windows Server 2019 Datacenter 操作系统 2.1.2、安装步骤 (1)、将两个压缩文件解压至同一个文件夹目录中(例如:database)。 (2)、解压完毕后,在该目录下打开 setup.exe,执行安装程序后会出现启 动安装的命令提示符,进入安装; (3)、稍等一会儿,就会出现以下安装步骤,取消复选框勾选,点击下 一步继续,并单击“是”继续 、之后出现以下安装框,默认点击“下一步”继续 、选择安装“服务器类” (6)、接下来进入安装配置,密码口令为大小写数字拼成的口令,否则, 就会提示警告 (7)、点击下一步,在执行先决条件检查时,我们选择全部忽略即可 (8)、下一步,点击完成按钮即开始安装了 安装画面如下 、进度条到达 100 时则会出现以下对话框,并等待其配置完成 主库安装完毕,下面是从库安装 2. Oracle11g 从数据库安装 2.2.1、程序准备 ◇Oracle11g 64 位安装包 ◇Windows Server 2019 Datacenter 操作系统 2.2.2、安装步骤 注意:安装步骤基本和主库步骤一致,但是需要注意到,从库安装Oracle时,要选 **仅安装数据库软件,其余步骤一致** 至此,两台机器的Oracle环境配置完成 3、安装位置 主库: oracle 软件:E:\app\Administrator\product\11.2.0\dbhome_1 数据库 orcl:E:\app\Administrator\oradata\orcl 备库: oracle 软件:E:\app\Administrator\product\11.2.0\dbhome_1 注:**要明了数据库的安装位置以及数据库实例的安装位置,不管是走安装默认位置还是自定义位** 4、配置dataguard主从库 1. 主库操作检查数据库,开启归档模式 如下图所示: 连接数据库 C:\Users\Administrator>sqlplus / as sysdba 查看是否是归档模式 SQL> archive log list 关闭数据库 SQL> shutdown immediate 启动到mount状态 SQL> startup mount 开启归档模式 SQL> alter database archivelog; 开启强制日志模式 SQL> alter database force logging; 为备库添加日志组(在主库mount状态下执行) 查看当前主库日志组: SQL> select from v$logfile order by group#;* 在主库为备库添加日志组,结果如下:(这个路径请和上面语句查询出来的路径改成一样) SQL> alter database add standby logfile group 4 'E:\app\Administrator\oradata\orcl\redo04.log' size 50m; SQL> alter database add standby logfile group 5 'E:\app\Administrator\oradata\orcl\redo05.log' size 50m; SQL> alter database add standby logfile group 6 'E:\app\Administrator\oradata\orcl\redo06.log' size 50m; SQL> alter database add standby logfile group 7 'E:\app\Administrator\oradata\orcl\redo07.log' size 50m; SQL> select from v$logfile order by group#;* 3、主备库配置网络监听 修改文件listener.ora, tnsnames.ora它们的位置在E:\app\Administrator\product\11.2.0\dbhome_1\NETWORK\ADMIN目录下(根据实际安装位置) 主库: *listener.ora*文件 注意:空格字符也要对齐,否则报语法错误,(注意里面的盘符路径和服务器内网IP根据自己实际改) ------------------------------------------------------------------------------------------------------ # listener.ora Network Configuration File: E:\app\Administrator\product*11.2.0*\dbhome_1\network\admin\listener.ora # Generated by Oracle configuration tools. SID_LIST_LISTENER = (SID_LIST =* (SID_DESC =* (SID_NAME = CLRExtProc)* (ORACLE_HOME = E:\app\Administrator\product**11.2.0*\dbhome_1) (PROGRAM = extproc)* (ENVS = "EXTPROC_DLLS=ONLY:E:\app\Administrator\product\11.2.0\dbhome_1\bin\oraclr11.dll")* )* *(SID_DESC = (GLOBAL_DBNAME = ORCL)* (ORACLE_HOME = E:\app\Administrator\product\11.2.0\dbhome_1)* (SID_NAME = ORCL)* )* )* LISTENER = (DESCRIPTION_LIST =* (DESCRIPTION =* (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))* (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.2.50)(PORT = 1521))* )* )* ADR_BASE_LISTENER = E:\app\Administrator ---------------------------------------------------------------------------------------------------------- *tnsnames.ora文件,注意:*djl 为备数据库服务的IP地址 ---------------------------------------------------------------------------------------------------------- # tnsnames.ora Network Configuration File: E:\app\Administrator\product*11.2.0*\dbhome_1\network\admin\tnsnames.ora # Generated by Oracle configuration tools. ORACLR_CONNECTION_DATA = (DESCRIPTION =* (ADDRESS_LIST =* (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))* )* (CONNECT_DATA =* (SID = CLRExtProc)* (PRESENTATION = RO)* )* )* ORCL = (DESCRIPTION =* (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.2.50)(PORT = 1521))* (CONNECT_DATA =* (SERVER = DEDICATED)* (SERVICE_NAME = orcl)* )* )* djl = (DESCRIPTION =* (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.2.51)(PORT = 1521))* (CONNECT_DATA =* (SERVER = DEDICATED)* (SERVICE_NAME = djl)* )* )* ------------------------------------------------------------------------------------------------- 备库: *listener.ora*文件 # listener.ora Network Configuration File: E:\app\Administrator\product*11.2.0*\dbhome_1\network\admin\listener.ora # Generated by Oracle configuration tools. SID_LIST_LISTENER = (SID_LIST =* (SID_DESC =* (SID_NAME = CLRExtProc)* (ORACLE_HOME = E:\app\Administrator\product**11.2.0*\dbhome_1) (PROGRAM = extproc)* (ENVS = "EXTPROC_DLLS=ONLY:E:\app\Administrator\product\11.2.0\dbhome_1\bin\oraclr11.dll")* )* (SID_DESC =* (GLOBAL_DBNAME = djl)* (ORACLE_HOME = E:\app\Administrator\product**11.2.0*\dbhome_1) (SID_NAME = djl)* )* )* LISTENER = (DESCRIPTION_LIST =* (DESCRIPTION =* (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))* (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.2.51)(PORT = 1521))* )* )* ADR_BASE_LISTENER = E:\app\Administrator *tnsnames.ora*文件 # tnsnames.ora Network Configuration File: E:\app\Administrator\product*11.2.0*\dbhome_1\network\admin\tnsnames.ora # Generated by Oracle configuration tools. ORACLR_CONNECTION_DATA = (DESCRIPTION =* (ADDRESS_LIST =* (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))* )* (CONNECT_DATA =* (SID = CLRExtProc)* (PRESENTATION = RO)* )* )* *djl *= (DESCRIPTION =* (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.2.51)(PORT = 1521))* (CONNECT_DATA =* (SERVER = DEDICATED)* (SERVICE_NAME = djl)* )* )* *ORCL *= (DESCRIPTION =* (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.2.50)(PORT = 1521))* (CONNECT_DATA =* (SERVER = DEDICATED)* (SERVICE_NAME = orcl)* )* )* 4、重启监听服务 主库,备库都执行 C:\Users\Administrator> lsnrctl stop C:\Users\Administrator> lsnrctl start 5、使用tnsping检查监听及服务命名 主库 C:\Users\Administrator>tnsping orcl C:\Users\Administrator>tnsping djl 备库 C:\Users\Administrator>tnsping orcl C:\Users\Administrator>tnsping djl 最后提示返回OK即可成功配置连接建立 6、主备库创建相关目录,详述如下 主库创建目录: F:\oracle_db_arch\arch --归档日志位置 F:\oracle_db_arch\arch_std --主库转为备库时,归档日志位置 从库创建目录: F:\oracle_db_arch\arch ----归档日志位置 F:\oracle_db_arch\arch_std --备库转为主库时,归档日志位置 E:\app\Administrator\oradata\djl --数据文件位置 E:\app\Administrator\admin\djl\adump --审计文件位置 E:\app\Administrator\flash_recovery_area\djl\ONLINELOG --联机重做位置 7、为主备库准备参数文件 主库 select from v$logfile order by group#;* SQL> create pfile from spfile; *注:*执行create语句之后,在E:\app\Administrator\product\11.2.0\dbhome_1\database目录下会出现文件INITorcl.ORA,用笔记本打开进行编辑 *主库INITorcl.ORA,*根据实际情况修改盘符,文件夹不存在需要建立,否则可能导致无法启动 orcl.__db_cache_size=1124073472 orcl.__java_pool_size=16777216 orcl.__large_pool_size=16777216 orcl.__oracle_base='E:\app\Administrator'#ORACLE_BASE set from environment orcl.__pga_aggregate_target=1040187392 orcl.__sga_target=1543503872 orcl.__shared_io_pool_size=0 orcl.__shared_pool_size=352321536 orcl.__streams_pool_size=0 *.audit_file_dest='E:\app\Administrator\admin\orcl\adump' *.audit_trail='db' *.compatible='11.2.0.0.0' *.control_files='E:\app\Administrator\oradata\orcl\control01.ctl','E:\app\Administrator\flash_recovery_area\orcl\control02.ctl' *.db_block_size=8192 *.db_domain='' *.db_name='orcl' *.db_recovery_file_dest='E:\app\Administrator\flash_recovery_area' *.db_recovery_file_dest_size=4102029312 *.diagnostic_dest='E:\app\Administrator' *.dispatchers='(PROTOCOL=TCP) (SERVICE=orclXDB)' *.memory_target=2577399808 *.open_cursors=300 *.processes=150 *.remote_login_passwordfile='EXCLUSIVE' *.undo_tablespace='UNDOTBS1' *.db_unique_name=orcl *.log_archive_config='dg_config=(orcl,djl)' *.log_archive_dest_1='LOCATION=F:\oracle_db_arch\arch valid_for=(online_logfiles,primary_role) db_unique_name=orcl' *.log_archive_dest_2='SERVICE=djl lgwr async affirm valid_for=(online_logfiles,primary_role) db_unique_name=djl' *.log_archive_dest_3='LOCATION=F:\oracle_db_arch\arch_std valid_for=(standby_logfiles,standby_role) db_unique_name=orcl' *.log_archive_dest_state_1='enable' *.log_archive_dest_state_2='enable' *.log_archive_dest_state_3='enable' *.fal_server=djl *.fal_client=orcl *.standby_file_management=auto *.db_file_name_convert=('E:\app\Administrator\oradata\djl','E:\app\Administrator\oradata\orcl') *.log_file_name_convert=('E:\app\Administrator\oradata\djl','E:\app\Administrator\oradata\orcl') 将主库initorcl.ora复制到备库对应目录下并修改内容如下 *备库修改文件名使用INITdjl.ORA*根据实际情况修改盘符,文件夹不存在需要建立,否则可能导致无法启动 orcl.__db_cache_size=1124073472 orcl.__java_pool_size=16777216 orcl.__large_pool_size=16777216 orcl.__oracle_base='E:\app\Administrator'#ORACLE_BASE set from environment orcl.__pga_aggregate_target=1040187392 orcl.__sga_target=1543503872 orcl.__shared_io_pool_size=0 orcl.__shared_pool_size=352321536 orcl.__streams_pool_size=0 *.audit_file_dest='E:\app\Administrator\admin\djl\adump' *.audit_trail='db' *.compatible='11.2.0.0.0' *.control_files='E:\app\Administrator\oradata\djl\control01.ctl','E:\app\Administrator\flash_recovery_area\djl\control02.ctl' *.db_block_size=8192 *.db_domain='' *.db_name='orcl' *.db_recovery_file_dest='E:\app\Administrator\flash_recovery_area' *.db_recovery_file_dest_size=4102029312 *.diagnostic_dest='E:\app\Administrator' *.dispatchers='(PROTOCOL=TCP) (SERVICE=orclXDB)','(address=(protocol=tcp)(host=192.168.2.51))(dispatchers=4)','(address=(protocol=ipc)(host=192.168.2.51))(dispatchers=2)' *.memory_target=2577399808 *.open_cursors=300 *.processes=150 *.remote_login_passwordfile='EXCLUSIVE' *.undo_tablespace='UNDOTBS1' *.db_unique_name=djl *.log_archive_config='dg_config=(djl,orcl)' *.log_archive_dest_1='LOCATION=F:\oracle_db_arch\arch valid_for=(online_logfiles,primary_role) db_unique_name=djl' *.log_archive_dest_2='SERVICE=orcl lgwr async affirm valid_for=(online_logfiles,primary_role) db_unique_name=orcl' *.log_archive_dest_3='LOCATION=F:\oracle_db_arch\arch_std valid_for=(standby_logfiles,standby_role) db_unique_name=djl' *.log_archive_dest_state_1='enable' *.log_archive_dest_state_2='enable' *.log_archive_dest_state_3='enable' *.fal_server=orcl *.fal_client=djl *.standby_file_management=auto *.db_file_name_convert=('E:\app\Administrator\oradata\orcl','E:\app\Administrator\oradata\djl') *.log_file_name_convert=('E:\app\Administrator\oradata\orcl','E:\app\Administrator\oradata\djl') 8、密码文件配置 将主库的参数文件PWDorcl.ora复制到备库对应目录下,并重命名为PWDdjl.ora 路径位置:E:\app\Administrator\product\11.2.0\dbhome_1\database 控制文件配置 使用查询语句 SELECT name FROM v$controlfile; 查询到两个控制文件位置 将主库的参数文件control01.ctl和control02.ctl复制到备库参数文件中指定位置下 如主库C:\app\Administrator\oradata\orcl\CONTROL01.CTL拷贝到备库 C:\app\Administrator\oradata\djl\CONTROL01.CTL, CONTROL02.CTL同理操作 没有就要建文件夹注意备库是djl 10、创建备库实例djl,在备库服务器执行创建 C:\Users\Administrator>oradim -new -sid djl 11、主备库的启动 主库:登录sqlplus在showdown状态下创建参数文件 查看oracle 启动状态 SQL> select status from v$instance; 关闭数据库 SQL> shutdown immediate 创建参数文件 SQL> create spfile from pfile; 启动数据库 SQL> startup 备库: 登录sqlplus出现如下错误 sqlplus / as sysdba 使用命令 set oracle_sid=djl 解决 创建参数文件 SQL> create spfile from pfile; 将数据库启动到nomount(必须是nomount状态) SQL> startup nomount 12、使用rman连接主备库 在主库执行: C:\Users\Administrator>rman target sys/123456@orcl auxiliary sys/123456@djl 注意:连接前使用rman登录主备库做测试 13、为备库备份参数文件 RMAN> backup current controlfile for standby database; 如果这部分执行报错 需要修改归档日志的路径,默认路径存储大小为2G 或者修改默认路径存储大小为500G SQL> alter system set db_recovery_file_dest_size=500G; 系统已更改。 参考: https://blog.csdn.net/mengxiang209/article/details/6936096 https://www.cnblogs.com/andy6/p/5997410.html https://blog.csdn.net/weixin_34384557/article/details/89774544 https://blog.csdn.net/weixin_34384557/article/details/89774544 再重新执行backup current controlfile for standby database;即可 14、将主库数据库复制到备库 RMAN> duplicate target database for standby from active database; 15、将备库设置为接受日志模式 说明:此时,主库为open状态,备库为mounted * **备库:* 在备库执行以下语句 将备库修改为接收应用主库归档的模式 SQL> alter database recover managed standby database disconnect from session; 后期维护 设置备库 SQL> alter database mount standby database; SQL> select sequence#,applied from V$archived_log where applied='YES'; SQL> alter database recover managed standby database cancel; 设置备库只读 SQL> alter database open read only; SQL> alter database recover managed standby database using current logfile disconnect from session; 说明:重启数据库后必须执行,这样数据才能同步。 查看日志应用情况 SQL> select sequence#,applied from V$archived_log where applied='IN-MEMORY'; 如果看到IN-MEMORY说明当前正在进行实时同步,如果最后一个是YES,也是正常的,说明当前操作为0 SQL> select sequence#,applied from V$archived_log; 查询当前的保护模式 SQL> select open_mode,database_role,db_unique_name,PROTECTION_MODE from v$database; 到此,oracle 11g dataguard 配置完毕。 启动从库,同步因停机未同步的归档日志 SQL> shutdown immediate; SQL> startup nomount; SQL> alter database mount standby database; 备库启用日志应用 SQL> alter database recover managed standby database disconnect from session; SQL> select sequence#,applied from V$archived_log where applied='YES'; 以只读方式启动从库 SQL> alter database open read only; SQL> alter database recover managed standby database using current logfile disconnect from session; 更改数据库恢复托管备用数据库取消 停止应用日志 SQL> alter database recover managed standby database cancel; 注意,如果连接显示 数据库未打开: 仅允许在固定表/视图中查询. 使用 alter database open 命令操作 ORA-01113: 文件 5 需要介质恢复 ORA-01110: 数据文件 5: 'C:\APP\ADMINISTRATOR\ORADATA\ORCL\EXAMPLE01.DBF' 使用如下命令解决再打开 SQL> recover datafile 'C:\APP\ADMINISTRATOR\ORADATA\ORCL\EXAMPLE01.DBF' 报错解决方案 ORA-10456:cannot open standby database;media recovery session may be in progress https://blog.csdn.net/dbangelica/article/details/86217958
2022年04月10日
51 阅读
0 评论
89 点赞