DB_FILE_NAME_CONVERT参数导致ORA-15124:ASMfilename'..
RAC主库+DG单机环境中,一旦主备库之前有归档间隔,而这些归档可能由于种种原因被删除,如归档被清理了,备份集策略已经超出所需归档。也不用担心,可以按以下大致步骤做恢复: o 主库上做基于SCN的增量备份 o 将备份传输至备库 o 备库恢复增量备份 o 主库创
RAC主库+DG单机环境中,一旦主备库之前有归档间隔,而这些归档可能由于种种原因被删除,如归档被清理了,备份集策略已经超出所需归档。也不用担心,可以按以下大致步骤做恢复:
o 主库上做基于SCN的增量备份
o 将备份传输至备库
o 备库恢复增量备份
o 主库创建一个standby controlfile,并传输至备库
o 上一步生成的控制文件替换备库的控制文件
这几天遇到个非常奇怪的问题,主库创建standby controlfile时总是报错ORA-15124。这个问题也困扰了自己很多天。
都试过:
o 检查数据库的所有物理文件 asmcmd ls -l来查看
o 检查数据库数据字典 v$database.name / dba_data_files.file_name
o 在asmcmd debug模式下ls -l 查看文件
o 检查ASM的v$asm_file, v$asm_alias等等
o 对ORA-15124做10046和errorstack
o 检查DG备份等等
在创建standby controlfile依旧报错,错误如下:
SQL> show parameter conver;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_file_name_convert string /data, +DATA/orcl/datafile
log_file_name_convert string /data, +DATA/orcl/onlinelog
(实际过程中,这两个参数如此配置是没有问题的...)
SQL> alter database create standby controlfile as '/tmp/a.ctl' reuse;
alter database create standby controlfile as '/tmp/a.ctl' reuse
*
ERROR at line 1:
ORA-15124: ASM file name '+data/odsptdb+DATAfile/system.259.862837403' containsan invalid alias name
对以上加粗部分的字符串是哪里来的表示非常有疑问!
最终,检查DB_FILE_NAME_CONVERT参数的配置,并且做了以下试验:
SQL> alter session set db_file_name_convert='/data','+abc';
------------------------------------------------------------------------/\\\\\\\\\
Session altered.
SQL> alter database create standby controlfile as '/tmp/a.ctl' reuse;
alter database create standby controlfile as '/tmp/a.ctl' reuse
*
ERROR at line 1:
ORA-15124: ASM file name '+data/odsptdb+abcfile/system.259.862837403' containsan invalid alias name
----------------------------------------------------------/\\\\\\\\\\
SQL> alter session set db_file_name_convert='/data','abc+abc';
-------------------------------------------------------------------------////\\\\
Session altered.
SQL> alter database create standby controlfile as '/tmp/a.ctl' reuse;
alter database create standby controlfile as '/tmp/a.ctl' reuse
*
ERROR at line 1:
ORA-15124: ASM file name '+data/odsptdbabc+abcfile/system.259.862837403' contains an invalid alias name
-------------------------------------------------------------////\\\\
SQL> alter session set db_file_name_convert='/data','abc';
Session altered.
SQL> alter database create standby controlfile as '/tmp/a.ctl' reuse;
Database altered.
从以上几个试验可以看出,DB_FILE_NAME_CONVERT确实影响了standby controlfile的创建。而且串里不能包含“+” (即加号)
在以往的RAC+ASM中,印象里面DB_FILE_NAME_CONVERT和LOG_FILE_NAME_CONVERT参数是可以有“+” (即加号)的,这一次遇到了很奇怪的问题。计划找个时间窗口,将以上两个参数后半部分都改为"+DATA",完全让ASM来管理。
特意在此记录一下。

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics



Use Java's File.length() function to get the size of a file. File size is a very common requirement when dealing with file operations. Java provides a very convenient way to get the size of a file, that is, using the length() method of the File class. . This article will introduce how to use this method to get the size of a file and give corresponding code examples. First, we need to create a File object to represent the file we want to get the size of. Here is how to create a File object: Filef

To learn more about open source, please visit: 51CTO Hongmeng Developer Community https://ost.51cto.com Running environment DAYU200:4.0.10.16SDK: 4.0.10.15IDE: 4.0.600 1. To create an application, click File- >newFile->CreateProgect. Select template: [OpenHarmony] EmptyAbility: Fill in the project name, shici, application package name com.nut.shici, and application storage location XXX (no Chinese, special characters, or spaces). CompileSDK10, Model: Stage. Device

New feature of PHP5.4 version: How to use callable type hint parameters to accept callable functions or methods Introduction: PHP5.4 version introduces a very convenient new feature - you can use callable type hint parameters to accept callable functions or methods . This new feature allows functions and methods to directly specify the corresponding callable parameters without additional checks and conversions. In this article, we will introduce the use of callable type hints and provide some code examples,

Use Java's File.renameTo() function to rename files. In Java programming, we often need to rename files. Java provides the File class to handle file operations, and its renameTo() function can easily rename files. This article will introduce how to use Java's File.renameTo() function to rename files and provide corresponding code examples. The File.renameTo() function is a method of the File class.

Product parameters refer to the meaning of product attributes. For example, clothing parameters include brand, material, model, size, style, fabric, applicable group, color, etc.; food parameters include brand, weight, material, health license number, applicable group, color, etc.; home appliance parameters include brand, size, color , place of origin, applicable voltage, signal, interface and power, etc.

During the development process, we may encounter such an error message: PHPWarning: in_array()expectsparameter. This error message will appear when using the in_array() function. It may be caused by incorrect parameter passing of the function. Let’s take a look at the solution to this error message. First, you need to clarify the role of the in_array() function: check whether a value exists in the array. The prototype of this function is: in_a

i9-12900H is a 14-core processor. The architecture and technology used are all new, and the threads are also very high. The overall work is excellent, and some parameters have been improved. It is particularly comprehensive and can bring users Excellent experience. i9-12900H parameter evaluation review: 1. i9-12900H is a 14-core processor, which adopts the q1 architecture and 24576kb process technology, and has been upgraded to 20 threads. 2. The maximum CPU frequency is 1.80! 5.00ghz, which mainly depends on the workload. 3. Compared with the price, it is very suitable. The price-performance ratio is very good, and it is very suitable for some partners who need normal use. i9-12900H parameter evaluation and performance running scores

C++ parameter type safety checking ensures that functions only accept values of expected types through compile-time checks, run-time checks, and static assertions, preventing unexpected behavior and program crashes: Compile-time type checking: The compiler checks type compatibility. Runtime type checking: Use dynamic_cast to check type compatibility, and throw an exception if there is no match. Static assertion: Assert type conditions at compile time.
