代码改变世界

12C -- ORA-65005: missing or invalid file name pattern for file

2017-06-28 20:40  abce  阅读(6850)  评论(0编辑  收藏  举报

克隆pdb创建新的pdb的时候遇到了以下的错误,具体过程如下文。
数据库版本:12.2.0.1

 

查看已有pdb的tempfile文件

SQL> select name from v$tempfile;

NAME
--------------------------------------------------------------------------------
+DATA/O12C/25FC2D397AF41D70E0524A0F0A0AAEDA/TEMPFILE/temp.276.947842435

 

查看已有pdb的datafile文件

SQL> select name from v$datafile;

NAME
--------------------------------------------------------------------------------
+DATA/O12C/25FC2D397AF41D70E0524A0F0A0AAEDA/DATAFILE/system.274.947842433
+DATA/O12C/25FC2D397AF41D70E0524A0F0A0AAEDA/DATAFILE/sysaux.275.947842433
+DATA/O12C/25FC2D397AF41D70E0524A0F0A0AAEDA/DATAFILE/undotbs1.273.947842433
+DATA/O12C/25FC2D397AF41D70E0524A0F0A0AAEDA/DATAFILE/users.278.947842449
+DATA/O12C/25FC2D397AF41D70E0524A0F0A0AAEDA/DATAFILE/undotbs2.277.947878603

  

创建新的pdb

SQL> create pluggable database abce from o12c1pdb file_name_convert=(
  2  '+data/o12c/25fc2d397af41d70e0524a0f0a0aaeda/datafile/system.274.947842433','+data/o12c/abce/datafile/system01.dbf',
  3  '+data/o12c/25fc2d397af41d70e0524a0f0a0aaeda/datafile/sysaux.275.947842433','+data/o12c/abce/datafile/sysaux01.dbf',
  4  '+data/o12c/25fc2d397af41d70e0524a0f0a0aaeda/datafile/undotbs1.273.947842433','+data/o12c/abce/datafile/undotbs101.dbf',
  5  '+data/o12c/25fc2d397af41d70e0524a0f0a0aaeda/datafile/undotbs2.277.947878603','+data/o12c/abce/datafile/undotbs201.dbf',
  6  '+data/o12c/25fc2d397af41d70e0524a0f0a0aaeda/datafile/users.278.947842449','+data/o12c/abce/datafile/users01.dbf',
  7  '+data/o12c/25fc2d397af41d70e0524a0f0a0aaeda/tempfile/temp.276.947842435','+data/o12c/abce/tempfile/temp01.dbf');
create pluggable database abce from o12c1pdb file_name_convert=(
*
ERROR at line 1:
ORA-65005: missing or invalid file name pattern for file -
+DATA/O12C/25FC2D397AF41D70E0524A0F0A0AAEDA/DATAFILE/system.274.947842433


SQL>

 

创建失败,报错。查了一下MOS,没有发现类似的问题。

在老盖的网站发了一篇文章,不过与本人遇到的问题还是有差别。这里链接一下,也许对大家有用:Oracle 12c:多租户数据库克隆 ORA-01276 错误处理一例

当然,也有人是因为没有加上temp文件导致的,但是与本人遇到的问题还是不符合。

 

最终怀疑是不是大小写的问题,于是把上面从v$tempfile、v$datafile中查看到的name结果直接拷贝在create语句中(保持大小写格式不变),同时要创建的pdb的文件路径也以类似的方式(路径以大写的格式),再次执行。居然创建成功了!!!

SQL> create pluggable database abce from o12c1pdb file_name_convert=(
  2      '+DATA/O12C/25FC2D397AF41D70E0524A0F0A0AAEDA/DATAFILE/system.274.947842433','+DATA/O12C/ABCE/DATAFILE/system01.dbf',
  3      '+DATA/O12C/25FC2D397AF41D70E0524A0F0A0AAEDA/DATAFILE/sysaux.275.947842433','+DATA/O12C/ABCE/DATAFILE/sysaux01.dbf',
  4      '+DATA/O12C/25FC2D397AF41D70E0524A0F0A0AAEDA/DATAFILE/undotbs1.273.947842433','+DATA/O12C/ABCE/DATAFILE/undotbs101.dbf',
  5      '+DATA/O12C/25FC2D397AF41D70E0524A0F0A0AAEDA/DATAFILE/undotbs2.277.947878603','+DATA/O12C/ABCE/DATAFILE/undotbs201.dbf',
  6      '+DATA/O12C/25FC2D397AF41D70E0524A0F0A0AAEDA/DATAFILE/users.278.947842449','+DATA/O12C/ABCE/DATAFILE/users01.dbf',
  7      '+DATA/O12C/25FC2D397AF41D70E0524A0F0A0AAEDA/TEMPFILE/temp.276.947842435','+DATA/O12C/ABCE/TEMPFILE/temp01.dbf');

Pluggable database created.

SQL>