ORA-39083 and ORA-01847 when restore DB

Имеем СУБД Oracle 11g + Oracle Linux 6.10

При ресторе БД возникла ошибка:

ORA-39083: Object type TABLE:"*"."USERCERT" failed to create with error:
ORA-01847: day of month must be between 1 and last day of month

ORA-39083: Object type TABLE:"*"."NOTIFYMSG" failed to create with error:
ORA-01861: literal does not match format string

Причина (в моем случае)

Некорректно настроенный файл ".bash_profile". Значения ORACLE_BASE, ORACLE_HOME, ORACLE_SID я почему-то прописал в файл "/etc/bashrc".

Решение

Переносим указанные переменные из "/etc/bashrc" в ".bash_profile". Т.о. в файле должны быть обязательно указаны:

export ORACLE_BASE=/mnt/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
export ORACLE_SID=ORACL11B
export ORACLE_UNQNAME=ORACL11B
export NLS_LANG=AMERICAN_AMERICA.CL8MSWIN1251
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH
export LIBPATH=$ORACLE_HOME/lib
export PATH=$ORACLE_HOME/bin:$PATH
export TZ=Ets/GMT-5

Также в скрипте рестора проверить наличие параметров:
export NLS_DATE_FORMAT="YYYY-MM-DD"
export NLS_TIMESTAMP_FORMAT="YYYY-MM-DD HH24:MI:SS"


Для ОС Windows нужно проверить реестр:
  • HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Session Manager\Environment
  • HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Control\Session Manager\Environment
  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment
  • HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_OraDb11g_home1
  • HKEY_LOCAL_MACHINE\Software\ORACLE\
*но не рекомендуется изменять данные в реестре

лучше использовать указание:
SET NLS_DATE_FORMAT=YYYY-MM-DD
SET NLS_TIMESTAMP_FORMAT=YYYY-MM-DD HH24:MI:SS

*обязательно без кавычек. Для проверки можно вывести значение переменной командой echo %NLS_DATE_FORMAT%

в скрипте импорта схемы.

Комментарии

Популярные сообщения из этого блога

Linux (РедОС). Сброс пароля

TRUNCATE / DELETE / DROP или как очистить таблицу

КБК. КВФО - Код вида финансового обеспечения (деятельности)

SQL Error [53200]: ОШИБКА: нехватка разделяемой памяти Подсказка: Возможно, следует увеличить параметр max_locks_per_transaction

РедОС. Подключение к сетевой папке