пятница, 24 мая 2013 г.

RMAN-08137: WARNING: archived log not deleted, needed for standby or upstream capture process


Не хочет rman удалять archivelogs, хотя казалось бы


select applied_scn from dba_capture;

select  thread#, sequence#
from v$archived_log
where :l_apply_scn between first_change# and next_change#;

rman> DELETE  ARCHIVELOG UNTIL SEQUENCE =:seq1 thread 1;
rman> DELETE  ARCHIVELOG UNTIL SEQUENCE = :seq2 thread 2;

должно работать. 

Оказывается RMAN  проверяет 
SELECT MIN_REQUIRED_CAPTURE_CHANGE# FROM V$DATABASE;
а обновляется он раз в 6 часов.

Как принудительно обновить, пока не знаю. Если кто в курсе - подскажите.

среда, 15 мая 2013 г.

Unable to perform the backup because the database is closed.

начал мне выдавать Grid Control  такой ответ.
С чего вдруг - не понятно.
После долгих копаний обнаружилось., что бэкап грид контрол делает скриптом rman_o.pl, в котором на конечном сервере БД он сначала пускает sqlplus /nolog
а потом только делает коннект.
А я тут как раз скрипт glogin подправил - sqlprompt настроил, чтоб global_name  мне рисовал.
Вот на этом месте бэкапный гридовый скрипт весело и спотыкался. Коннект у него не проходил. состояние базы он снять не мог и дальнейший бэкап не пускал.

Настройка репликации с помощью Streams


задача:
 реплицировать схему из одной базы в другую, за исключением таблиц


что имеем:


  • пользователь streamadmin создан на обоих базах с помощью oracle cloud control.
  • DB линки также созданы.
  • Настроить репликацию мастером не получилось - разъехались SCN.
  • база SOURCE_DB.DOMAIN.COM
  • база TARGET_DB.DOMAIN.COM
  • схема TEST_STREAM

Реализация

среда, 8 мая 2013 г.

REDO Logs в RAC

 в RAC каждый instance ведет свои redo логи.

добавить лог группу для конкретного инстанса можно командой:


ALTER DATABASE
  ADD LOGFILE
     THREAD 1
         GROUP 1  ('+ASM_REDO')
      SIZE 50M;

соответственно архивлоги тоже у каждого свои. Восстановить в рмане их можно командой вида:

select name, thread#, sequence#, status, first_time, next_time, first_change#, next_change#
from v$archived_log
where :SCN between first_change# and next_change#;

rman> restore archivelog from logseq=45164 thread 1