Пытаемся перетащить бэкап SQL 2008 R2 на SQL 2008 — шаг 2

Продолжение…

Предыдущие страницы:

Бэкап SQL 2008 R2 не восстановить на SQL 2008, что делать?

Пытаемся перетащить бэкап SQL 2008 R2 на SQL 2008

Первое, что мне пришлось сделать перед запуском скрипта — это откорректировать путь, где будут созданы файлы базы данных. На моей виртуалке совсем мало места осталось на диске C:, зато много на диске E:

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

Msg 5149, Level 16, State 3, Line 1
Параметр MODIFY FILE вызвал системную ошибку 112(failed to retrieve text for this error. Reason: 1815) при попытке расширить физический файл "E:\Epicor905\Epicor905_log.LDF".
Msg 1802, Level 16, State 4, Line 1
Ошибка операции CREATE DATABASE. Некоторые из перечисленных имен файлов не были созданы. Проверьте связанные ошибки.

Пришлось откорректировать инструкцию

CREATE DATABASE [Epicor905] ON  PRIMARY
( NAME = N'Epicor905', FILENAME = N'E:\Epicor905\Epicor905.mdf' , SIZE = 4909312KB , MAXSIZE = UNLIMITED, FILEGROWTH = 1024KB )
LOG ON
( NAME = N'Epicor905_log', FILENAME = N'E:\Epicor905\Epicor905_log.LDF' , SIZE = 46445760KB , MAXSIZE = 2048GB , FILEGROWTH = 10%)
GO

убрав из неё «SIZE = 46445760KB , »

CREATE DATABASE [Epicor905] ON  PRIMARY
( NAME = N'Epicor905', FILENAME = N'E:\Epicor905\Epicor905.mdf', MAXSIZE = UNLIMITED, FILEGROWTH = 1024KB )
LOG ON
( NAME = N'Epicor905_log', FILENAME = N'E:\Epicor905\Epicor905_log.LDF', MAXSIZE = 2048GB , FILEGROWTH = 10%)
GO

После этого всё прошло успешно, однако я получил большое количество предупреждений:

Внимание! Максимальная длина ключа - 900 байт. Индекс "PRIdx" имеет максимальную длину 2460 байт. Для некоторых комбинаций больших значений операции вставки или обновления не смогут быть выполнены.
Внимание! Максимальная длина ключа - 900 байт. Индекс "PRIdx" имеет максимальную длину 2460 байт. Для некоторых комбинаций больших значений операции вставки или обновления не смогут быть выполнены.
Внимание! Максимальная длина ключа - 900 байт. Индекс "PrimaryKeyIdx" имеет максимальную длину 1900 байт. Для некоторых комбинаций больших значений операции вставки или обновления не смогут быть выполнены.

[...]

Внимание! Максимальная длина ключа - 900 байт. Индекс "ProgramName" имеет максимальную длину 1188 байт. Для некоторых комбинаций больших значений операции вставки или обновления не смогут быть выполнены.

Поискал я что это означает, чем грозит и успокоился. Вот, в частности, что удалось обнаружить (красным выделено мною):

technet.microsoft.com на странице http://technet.microsoft.com/ru-ru/library/bb794645.aspx писал(а):
3.UpdateApplicationsStatusScript.sql
Примечание.
При выполнении сценария TypeLibMasterSchema.sql вручную в базе данных приложения вы увидите следующее сообщение:
«Внимание! Максимальная длина ключа – 900 байт. Индекс «Sec_ConsolidationMethod_PK» имеет максимальную длину 1040 байт. Для некоторых комбинаций больших значений операции вставки или обновления не смогут быть выполнены».«Внимание! Максимальная длина ключа – 900 байт. Индекс «Sec_ExchangeRate_PK» имеет максимальную длину 1040 байт. Для некоторых комбинаций больших значений операции вставки или обновления не смогут быть выполнены».
Игнорируйте эти сообщения. Корпорация Майкрософт подтверждает, что эти сообщения в данном случае безвредны. Они будут удалены в более поздней версии продукта.

Далее…