oracle升级后数据文件路径变为大写

进行数据文件维护时,发现数据文件的名称存在大小写差异。

在某个时间点以后创建的数据文件,名称中的db_name和“datafile”都是大写,而以前都是小写。

在这里插入图片描述

查询官方文档 Directory for Datafiles and Controlfiles Become Uppercase in 18.3 DBCA. (Doc ID 2542927.1)

在18.3.0.0版本开始,内部设计上的变化导致了此问题。

同时还指向一个internal的文档,无权限浏览:

  • 18.3 DBCA UPPERCASING DB_UNIQUE_NAME FOR DIRECTORY OF DATA FILES AND CONTROL FILES.

进一步分析发现,我们将数据库升级到19c,并将compatible由11.2.0.4改为19.3.0.0后,数据文件路径就改为大写了。

使用文件系统作为存储介质的数据库未出现此问题。

Directory for Datafiles and Controlfiles Become Uppercase in 18.3 DBCA. (Doc ID 2542927.1)

APPLIES TO:
Oracle Database Configuration Assistant - Version 18.3.0.0.0 and later
Information in this document applies to any platform.

SYMPTOMS
When you specified lowercase “DB_UNIQUE_NAME” variable(for example:orcl) in DB:18.3 DBCA to create DB instance
after the instance be created, you will find the directory of data files and control files contains uppercase DB_UNIQUE_NAME which you specified.

/u01/app/oracle/oradata/ORCL

This result is different from the previous version(DB:12.2/DB:12.1).

If we save the DBCA scripts which can be generated by DBCA, we could see that even if you specified lowercase DB_UNIQUE_NAME in DBCA,
the script is to create uppercase DB_UNIQUE_NAME in the directory path of data files and control files.

$ pwd
…/…oracle/admin/orcl/scripts
scripts]$ grep “ORCL” *.sql
cloneDBCreation.sql:LOGFILE GROUP 1
(’…oradata/ORCL/redo01.log’) SIZE 200M,
cloneDBCreation.sql:GROUP 2 (’…oradata/ORCL/redo02.log’) SIZE
200M,
cloneDBCreation.sql:GROUP 3 (’…/oradata/ORCL/redo03.log’) SIZE
200M RESETLOGS;
cloneDBCreation.sql:LOGFILE GROUP 1
(’…oradata/ORCL/redo01.log’) SIZE 200M,
cloneDBCreation.sql:GROUP 2 (’…oradata/ORCL/redo02.log’) SIZE
200M,

plug_PDBSeed.sql:host mkdir -p …/oradata/ORCL/pdbseed;
plug_PDBSeed.sql:host mkdir -p …/oracle/oradata/ORCL/pdbseed;

rmanRestoreDatafiles.sql:set newname for datafile 4 to
‘…oradata/ORCL/undotbs01.dbf’ ;
rmanRestoreDatafiles.sql:set newname for datafile 7 to
‘…oradata/ORCL/users01.dbf’ ;
CHANGES
Using DB:18.3 DBCA to create database instance and specified lowercase “DB_UNIQUE_NAME” variable.

CAUSE
It is a limitation according to current design.

SOLUTION
The following method can avoid this issue.

STEP 1: Generate the DBCA Scripts.
STEP 2: Change the uppercase DB_UNIQUE_NAME to lowercase DB_UNIQUE_NAME manually.
STEP 3: Execute these scripts to create DB instance.

来自 “ 开源世界 ” ,链接:http://ym.baisou.ltd/post/537.html,如需转载,请注明出处,否则将追究法律责任。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

CRMEB定制开发

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值