Последовательности Oracle не синхронизированы / не соответствуют таблице - PullRequest
0 голосов
/ 30 мая 2018

У нас есть база данных Oracle 11.2, в которой несколько, если не все, последовательности не синхронизированы.Их последнее число не соответствует максимальному количеству соответствующих таблиц базы данных.

Кажется, я не могу найти никаких возможных причин в сети, но одна мысль, которая пришла в голову, - возможно ли восстановить базу данных без восстановления последовательности?Моя теория заключается в том, что производственная копия помещалась в базу данных QA, а последовательности никогда не обновлялись.

1 Ответ

0 голосов
/ 30 мая 2018

Да, это вероятный сценарий, который я видел довольно часто.Если база данных QA копируется из производственных резервных копий, то значения последовательности в порядке.

Если, однако, содержимое производственных таблиц копируется, например, с помощью expdp / impdb, то вы получите именно то несоответствие, которое вы описываете.

На ум приходят два решения:

  1. экспорт / импорт таблиц и последовательностей из производства в QA.
  2. запуск сценария в базе данных QA, который сбрасывает последовательности в соответствии с максимальным значением в таблицах

В случае гибернации это может быть совсем другая история ...

...