首页 > 其他分享 >异构dataguard下的db_file_name_convert设置

异构dataguard下的db_file_name_convert设置

时间:2023-12-15 13:56:09浏览次数:28  
标签:convert file app db oradata dataguard oracle u01

环境:
主库:win2012 server
从库:centos 6
db:11.2.0.4

 

1.主库上创建表空间

create tablespace tps_win01
logging datafile 'c:\oracle\app\oradata\win11g\tps_win01.dbf' size 50m
autoextend on
next 10m maxsize 2048m
extent management local
segment space management auto;

 

2.从库日志看到创建的文件

Media Recovery Waiting for thread 1 sequence 140 (in transit)
Recovery of Online Redo Log: Thread 1 Group 4 Seq 140 Reading mem 0
  Mem# 0: /u01/app/oracle/oradata/ora11g/stdbyredo04.log
Fri Dec 15 01:34:29 2023
WARNING: File being created with same name as in Primary
Existing file may be overwritten
Recovery created file C:\ORACLE\APP\ORADATA\WIN11G\TPS_WINAA01.DBF
Successfully added datafile 8 to media recovery
Datafile #8: '/u01/app/oracle/product/11.2.0.4/db_1/dbs/C:ORACLEAPPORADATAWIN11GTPS_WINAA01.DBF'

SQL> select name from v$datafile;

NAME
--------------------------------------------------------------------------------
/u01/app/oracle/oradata/ora11g/system01.dbf
/u01/app/oracle/oradata/ora11g/sysaux01.dbf
/u01/app/oracle/oradata/ora11g/undotbs01.dbf
/u01/app/oracle/oradata/ora11g/users01.dbf
/u01/app/oracle/oradata/ora11g/tps_hxl01.dbf
/u01/app/oracle/oradata/ora11g/tps_goldengate01.dbf
/u01/app/oracle/oradata/ora11g/tps_win01.dbf
/u01/app/oracle/product/11.2.0.4/db_1/dbs/C:ORACLEAPPORADATAWIN11GTPS_WINAA01.DBF

存放路径不是我们预期的

 

3.查看参数db_file_name_convert

SQL> show parameters db_file_name_convert;

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_file_name_convert                 string      win11g, ora11g


这样配置在linux->linux是没问题的,但现在是win->linux,没有按照预期的转换


4.尝试修改数据文件名称

SQL> alter database recover managed standby database canel;
SQL> alter system set standby_file_management=manual;
SQL>alter database rename file '/u01/app/oracle/product/11.2.0.4/db_1/dbs/C:ORACLEAPPORADATAWIN11GTPS_WINAA01.DBF' to '/u01/app/oracle/oradata/ora11g/tps_winaa01.dbf';
alter database rename file '/u01/app/oracle/product/11.2.0.4/db_1/dbs/C:ORACLEAPPORADATAWIN11GTPS_WINAA01.DBF' to '/u01/app/oracle/oradata/ora11g/tps_winaa01.dbf'
*
ERROR at line 1:
ORA-01511: error in renaming log/data files
ORA-01121: cannot rename database file 8 - file is in use or recovery
ORA-01110: data file 8:
'/u01/app/oracle/product/11.2.0.4/db_1/dbs/C:ORACLEAPPORADATAWIN11GTPS_WINAA01.DBF'

 

好像不能直接修改,数据库需要先修改到mount模式

 

5.数据库修改到mount状态下

SQL> shutdown immediate
SQL> startup mount

 

6.数据文件拷贝到正确的目录

cp /u01/app/oracle/product/11.2.0.4/db_1/dbs/C:ORACLEAPPORADATAWIN11GTPS_WINAA01.DBF /u01/app/oracle/oradata/ora11g/tps_winaa01.dbf

 

7.再次修改
SQL>alter database rename file '/u01/app/oracle/product/11.2.0.4/db_1/dbs/C:ORACLEAPPORADATAWIN11GTPS_WINAA01.DBF' to '/u01/app/oracle/oradata/ora11g/tps_winaa01.dbf';

 

8.打开数据库
SQL> alter database open;

 

9.参数修改为自动
SQL>alter system set standby_file_management=auto;

 

10.应用日志
SQL> alter database recover managed standby database using current logfile disconnect from session;

 

11.修改参数db_file_name_convert

SQL> alter system set db_file_name_convert='C:\oracle\app\oradata\win11g','/u01/app/oracle/oradata/ora11g' scope=both;
alter system set log_file_name_convert='C:\oracle\app\oradata\win11g','/u01/app/oracle/oradata/ora11g' scope=both
                 *
ERROR at line 1:
ORA-02095: specified initialization parameter cannot be modified

alter system set db_file_name_convert='C:\oracle\app\oradata\win11g','/u01/app/oracle/oradata/ora11g' scope=spfile;

 

12.重启生效

alter database recover managed standby database cancel;
shutdown immediate
startup
alter database recover managed standby database using current logfile disconnect from session;

 

发现没有设置正确

主库创建表空间,从库发现数据文件不是放置在预期的地方
Successfully added datafile 9 to media recovery
Datafile #9: '/u01/app/oracle/product/11.2.0.4/db_1/dbs/C:ORACLEAPPORADATAWIN11GTPS_WINBB01.DBF'

正确的设置如下:
alter system set db_file_name_convert='C:\ORACLE\APP\ORADATA\WIN11G\','/u01/app/oracle/oradata/ora11g/' scope=spfile;

 

最后一个目录需要使用\(win)或是/(linux)结束

 

标签:convert,file,app,db,oradata,dataguard,oracle,u01
From: https://www.cnblogs.com/hxlasky/p/17903232.html

相关文章

  • Mongodb安装篇+可视化工具篇
    下载MongoDB官网下载地址:DownloadMongoDBCommunityServer|MongoDB Version选择:稳定版4.4.2Mongo的版本分为稳定版和开发版,其中,稳定版是经过充分测试的版本,具有稳定性和可靠性;而开发版是未得到充分测试的版本,不适合初学者。所以我选择的稳定版本4.4.2/稳定版与开发版区......
  • java: MappedByteBuffer的用法
    packagenio;importjava.io.RandomAccessFile;importjava.nio.MappedByteBuffer;importjava.nio.channels.FileChannel;publicclassMappedByteBufferTest{publicstaticvoidmain(String[]args)throwsException{RandomAccessFilerandomAccessF......
  • boltdb系统架构解析
    1.整体系统架构  boltdb是小型的单机kv存储系统,所有数据都保存在一个文件中,通过内存映射的方式进行数据读取和写入,存储结构采用类B+树的组织形式,支持一写多读的事务机制,支持bucket增删改查、bucket嵌套和k/v增删改查等功能。 2.详细数据结构  DB:代表着boltdb文件......
  • spring cloud生态中Feign、Ribbon、loadbalancer的一些历史
    背景本意是想写个feign中loadbalancer组件和nacos相遇后,一个兼容相关的问题,后面发现Feign这套东西很深,想一篇文章写清楚很难,就先开一篇,讲历史。Feign、OpenFeign、SpringCloudOpenFeignFeignFeign是Java生态中的一个库,这个库的官方目标是:FeignmakeswritingJavahttpclie......
  • 关于再次出现 Could not open client transport with JDBC Uri: jdbc:hive2://node1:1
    写在最前边——我报错是因为空间不足 当我时隔两个月再次看到这个报错的时候我是感到绝望的————然而当我查了一遍百度发现唯一一个拥有相同报错解决方法的博客出自我之手的时候我的崩溃的————在我发现曾经的方法无法解决现在的我的报错的时候,我觉得我的心都碎了QAQ......
  • oracle设置与数据源的 JDBC 连接
    转自https://docs.oracle.com/cloud/help/zh_CN/analytics-cloud/ACSDS/GUID-FB2AEC3B-2178-48DF-8B9F-76ED2D6B5194.htm#ACSDS-GUID-FB2AEC3B-2178-48DF-8B9F-76ED2D6B5194 Oracle数据库要连接到Oracle数据库(非RAC),请使用以下格式的连接字符串:jdbc:oracle:thin:@[ho......
  • 关于EthernetIP转ModbusTCP协议转换的成熟应用
    在现代工业自动化领域,以太网和互联网的集成已经成为一种趋势。Ethernet/IP转ModbusTCP网关作为一种关键的通信设备,能够实现以太网和ModbusTCP协议之间的转换,从而在工业自动化领域中发挥重要作用。本文将详细介绍Ethernet/IP转ModbusTCP网关的应用和配置方法。Ethernet/IP转Mo......
  • 手动安装LAMP——在 CentOS 7 上安装 PHP、Apache 和 MariaDB(替代 MySQL)
    在CentOS7上安装PHP、Apache和MariaDB(替代MySQL)的过程如下:1.更新系统:sudoyumupdate2.安装Apache:sudoyuminstallhttpd3.启动Apache服务并设置开机自启:sudosystemctlstarthttpdsudosystemctlenablehttpd4.安装MariaDB:sudoyuminstallmariadb-server......
  • Qt之modbus_slave例程的底层串口数据分析
    一.参考网址1. qCDebug输出到日志文件2. HowtoredirectqDebug,qWarning,qCriticaletcoutput?二.问题1. 如何查看slave底层收到的主机发送的消息和回复的消息?解决办法:在main.cpp代码中取消注释 注:QLoggingCategory::setFilterRules函数不能重复使用,其只能最后......
  • Modbus转Profinet网关的配置步骤和注意事项
     Modbus转Profinet网关的配置步骤和注意事项当拿到Modbus转Profinet网关(XD-MDPN100/200)不会配置或是配置完成后发现Modbus转Profinet网关(XD-MDPN100/200)与设备通讯不上等问题。下面就这些问题给大家详细解读。 首先,确保Modbus转Profinet网关(XD-MDPN100/200)的电源连接正常。检......