Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Проблема с контрольником бывшего праймери / 17 сообщений из 17, страница 1 из 1
07.11.2016, 04:34
    #39342312
micis
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с контрольником бывшего праймери
Имеем праймери+3 стендбая (все 12.1.0.2.0).
Недавно сделали плановый switchover без ошибок и проблем (базы ролями поменялись, накат логов пошёл на старый праймери).

После этого начались проблемы:
Если сделать контрольник с базы бывшего праймери командой
Код: plsql
1.
RMAN> backup current controlfile for standby format '/oradata/%d_control.bak';

то при разворачивании новой тестовой базы с этим контролом не применяется опция db_file_name_convert из инит-файла.
Но если сделать контрольник с любого другого хоста (новый праймери или другие стендбаи), то db_file_name_convert применяется как и надо.

При чём, и с того проблемного хоста ДО переключения switchover всё работало.

Что надо посмотреть/исправить?
...
Рейтинг: 0 / 0
07.11.2016, 08:01
    #39342333
Вячеслав Любомудров
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с контрольником бывшего праймери
Не знаю как 12, но до этого настройка DB_FILE_NAME_CONVERT применялась ТОЛЬКО при команде DUPLICATE (в том числе и при создании стендбая). При обычниых командах RECOVER/RESTORE оно игнорируется
...
Рейтинг: 0 / 0
07.11.2016, 09:07
    #39342350
Vadim Lejnin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с контрольником бывшего праймери
micis,

1) Покаж значение DB_FILE_NAME_CONVERT какое пытаешься используешь
2) Посмотри какие конкретно пути прописаны в этом control
Код: plsql
1.
strings -a *_control.bak | grep oradata
...
Рейтинг: 0 / 0
07.11.2016, 10:21
    #39342388
Q.Tarantino
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с контрольником бывшего праймери
Вячеслав ЛюбомудровНе знаю как 12, но до этого настройка DB_FILE_NAME_CONVERT применялась ТОЛЬКО при команде DUPLICATE (в том числе и при создании стендбая). При обычниых командах RECOVER/RESTORE оно игнорируется
если ресторить БД как стендбай - то работает.
...
Рейтинг: 0 / 0
07.11.2016, 12:07
    #39342482
micis
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с контрольником бывшего праймери
Q.Tarantinoесли ресторить БД как стендбай - то работает.Да, именно так и делаем обычно тестовые БД. Т.к. бекапы уже есть, вот с них и разворачиваем (да и нагрузку лишнюю не создаём):
- монтируем на тестовом сервере nfs-шару с бекапом (там же лежит и контрольник для стендбая)
- стартуем инстанс, восстанавливаем контрольник (инит-файлы уже готовы от предыдущей тестовой базы), монтируем
- в rman-е делаем CATALOG START WITH '/mnt/backups/...', затем restore + recover
- ну и затем активируем стендбай базу.


Vadim Lejnin,
Код: plsql
1.
2.
3.
4.
5.
SQL> select value from v$parameter where name='db_file_name_convert';

VALUE
----------------------------------------------------------------------------------------------------------------------------------------------------------
/oradata/crm03, /oradata/dbtest


Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
$ strings -a crm03_control.bak | grep oradata
/oradata/crm03/T_USR36.dbf
/oradata/crm03/T_AUD11.dbf
/oradata/crm03/T_USR35.dbf
/oradata/crm03/I_USR37.dbf
/oradata/crm03/I_USR36.dbf
/oradata/crm03/I_USR35.dbf
/oradata/crm03/T_USR34.dbf
/oradata/crm03/T_USR33.dbf
/oradata/crm03/T_AUD10.dbf
/oradata/crm03/I_AUD04.dbf
...


Проверял уже пути на 10 раз. Не в них дело, видимо.
...
Рейтинг: 0 / 0
07.11.2016, 12:41
    #39342508
Q.Tarantino
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с контрольником бывшего праймери
micisмонтируем
не уверен, но все же... монтируете через 'alter database mount standby database'?
...
Рейтинг: 0 / 0
08.11.2016, 06:35
    #39343059
micis
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с контрольником бывшего праймери
Q.Tarantinoне уверен, но все же... монтируете через 'alter database mount standby database'?Нет, просто mount. Но проверил сейчас и с данной командой - тот же результат. Да и документация говорит о том же:
The keywords STANDBY DATABASE are optional, because Oracle Database determines automatically whether the database to be mounted is a primary or standby database
Проверил уже все шаги по этой инструкции Creating a Physical Standby Database

При чём, если взять контрольник с "нормального" стендбая, восстановить на тесте и смонтировать БД, то
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
RMAN> select name from v$datafile where file#=1;



NAME                                                                            
--------------------------------------------------------------------------------

/oradata/dbtest/system01.dbf

показывает сконвертированный путь, хотя в контрольнике исходные пути
Код: plsql
1.
2.
3.
$ strings -a control01.ctl | grep oradata | grep system01.dbf 
/oradata/crm03/system01.dbf
/oradata/crm03/system01.dbf



Куда ещё смотреть?
...
Рейтинг: 0 / 0
16.11.2016, 10:21
    #39348120
micis
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с контрольником бывшего праймери
Попробовал на тестовом стенде повторить проблему - всё аналогично проду.

Видимо придётся переходить на команду DUPLICATE (архивлоги не бекапятся у нас, поэтому DUPLICATE идёт без опции DORECOVER):
Код: plsql
1.
2.
3.
$ rman CONNECT AUXILIARY /
RMAN> DUPLICATE DATABASE FOR STANDBY BACKUP LOCATION '/mnt/backups/' NOFILENAMECHECK;
RMAN> RECOVER CLONE DATABASE UNTIL SCN ...;

Только опять же, теперь не переименовываются автоматом редологи (может из-за отсутствия DORECOVER?). Но их проще пересоздать...
...
Рейтинг: 0 / 0
17.11.2016, 02:13
    #39348758
Вячеслав Любомудров
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с контрольником бывшего праймери
А для логов нужно LOG_FILE_NAME_CONVERT
...
Рейтинг: 0 / 0
17.11.2016, 08:28
    #39348794
micis
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с контрольником бывшего праймери
Вячеслав ЛюбомудровА для логов нужно LOG_FILE_NAME_CONVERTТак в том-то и дело, что стоял этот параметр. Да и сейчас задан, автоматом перейдя в spfile.
...
Рейтинг: 0 / 0
17.11.2016, 09:00
    #39348806
Q.Tarantino
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с контрольником бывшего праймери
micis
Код: plsql
1.
NOFILENAMECHECK


если файлы переименовываются, зачем тут это?
...
Рейтинг: 0 / 0
17.11.2016, 09:02
    #39348808
Вячеслав Любомудров
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с контрольником бывшего праймери
А он сначала проверяется
...
Рейтинг: 0 / 0
17.11.2016, 09:04
    #39348810
Q.Tarantino
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с контрольником бывшего праймери
Вячеслав ЛюбомудровА он сначала проверяется
расшифруй?
я когда создавал тестовые БД по другим путям всегда убирал данный параметр - сразу видно если что-то забыл прописать в CONVERT.
...
Рейтинг: 0 / 0
17.11.2016, 09:19
    #39348815
Вячеслав Любомудров
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с контрольником бывшего праймери
Забей, я прогнал
...
Рейтинг: 0 / 0
18.11.2016, 03:17
    #39349544
micis
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с контрольником бывшего праймери
Q.Tarantinoесли файлы переименовываются, зачем тут это?А иначе получаю ошибку RMAN-05001. У меня все базы на одном хосте.
Хотя рман пишет, что конфликт с именем уже по сконвертированному пути:
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of Duplicate Db command at 11/17/2016 17:04:41
RMAN-05501: aborting duplication of target database
RMAN-05001: auxiliary file name /oradata/test/test_convert_filename.dbf conflicts with a file used by the target database
RMAN-05001: auxiliary file name /oradata/test/users01.dbf conflicts with a file used by the target database
RMAN-05001: auxiliary file name /oradata/test/undo01.dbf conflicts with a file used by the target database
RMAN-05001: auxiliary file name /oradata/test/sysaux01.dbf conflicts with a file used by the target database
RMAN-05001: auxiliary file name /oradata/test/system01.dbf conflicts with a file used by the target database

А на самом деле этих файлов ещё нет. Он смотрит в /oradata/prod, где лежит исходная база.
...
Рейтинг: 0 / 0
18.11.2016, 10:35
    #39349653
micis
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с контрольником бывшего праймери
А сейчас вылезло вообще не пойми что:

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
$ rlwrap rman auxiliary /

Recovery Manager: Release 12.1.0.2.0 - Production on Fri Nov 18 16:20:22 2016

Copyright (c) 1982, 2014, Oracle and/or its affiliates.  All rights reserved.

connected to auxiliary database: PROD (not mounted)

RMAN> DUPLICATE DATABASE FOR STANDBY BACKUP LOCATION '/oradata/test/backup' NOFILENAMECHECK dorecover;

Starting Duplicate Db at 18.11.2016 16:20:53

contents of Memory Script:
{
   restore clone standby controlfile from  '/oradata/test/backup/PROD_43_928235945_1brl7gd9_1_1';
}
executing Memory Script

Starting restore at 18.11.2016 16:20:53
allocated channel: ORA_AUX_DISK_1
channel ORA_AUX_DISK_1: SID=162 device type=DISK

channel ORA_AUX_DISK_1: restoring control file
channel ORA_AUX_DISK_1: restore complete, elapsed time: 00:00:01
output file name=/oradata/test/control1.ctl
Finished restore at 18.11.2016 16:20:56

contents of Memory Script:
{
   sql clone 'alter database mount standby database';
}
executing Memory Script

sql statement: alter database mount standby database
released channel: ORA_AUX_DISK_1
allocated channel: ORA_AUX_DISK_1
channel ORA_AUX_DISK_1: SID=162 device type=DISK
allocated channel: ORA_AUX_DISK_2
channel ORA_AUX_DISK_2: SID=475 device type=DISK

contents of Memory Script:
{
   set until scn  2196101;
   set newname for tempfile  1 to 
 "/oradata/test/temp01.dbf";
   switch clone tempfile all;
   set newname for datafile  1 to 
 "/oradata/test/system01.dbf";
   set newname for datafile  2 to 
 "/oradata/test/sysaux01.dbf";
   set newname for datafile  3 to 
 "/oradata/test/undo01.dbf";
   set newname for datafile  4 to 
 "/oradata/test/users01.dbf";
   set newname for datafile  5 to 
 "/oradata/test/test_convert_filename.dbf";
   restore
   clone database
   ;
}
executing Memory Script

executing command: SET until clause

executing command: SET NEWNAME

renamed tempfile 1 to /oradata/test/temp01.dbf in control file

executing command: SET NEWNAME

executing command: SET NEWNAME

executing command: SET NEWNAME

executing command: SET NEWNAME

executing command: SET NEWNAME

Starting restore at 18.11.2016 16:21:04
using channel ORA_AUX_DISK_1
using channel ORA_AUX_DISK_2

creating datafile file number=1 name=/oradata/test/system01.dbf
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of Duplicate Db command at 11/18/2016 16:21:05
RMAN-05501: aborting duplication of target database
RMAN-03015: error occurred in stored script Memory Script
RMAN-06136: ORACLE error from auxiliary database: ORA-01180: can not create datafile 1
ORA-01110: data file 1: '/oradata/prod/system01.dbf'


После переименования датафайлов, рман пытается восстановить в старый каталог!
...
Рейтинг: 0 / 0
18.11.2016, 15:41
    #39349922
Вячеслав Любомудров
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с контрольником бывшего праймери
Нет, восстановиться он пытается в новый, а в последней строчке он тебе пишет информацию из контрола (там, естественно, путь старый)
...
Рейтинг: 0 / 0
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Проблема с контрольником бывшего праймери / 17 сообщений из 17, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]