Ознаки
Розглянемо такий сценарій:
-
Створення бази даних у Microsoft SQL Server 2008 R2.
-
Оновіть логічне ім'я бази даних за допомогою оператора ALTER DATABASE.
-
Виконання повного резервного копіювання бази даних. Примітка. Після виконання резервної копії створюється файл резервної копії повної бази даних.
-
Спроба відновити базу даних із файлу резервної копії бази даних.
У цьому випадку з'являється таке повідомлення про помилку:
Msg 3234, рівень 16, стан 2, логічний файл рядка 1'<логічне ім'я файлу>' не входить до бази даних " ім'я бази даних<>". Щоб перелічити логічні імена файлів, скористайтеся функцією RESTORE FILELISTONLY.Msg 3013, рівень 16, стан 1, рядок 1відновлення бази даних припиняється ненормально.
Якщо ви використовуєте інструкцію RESTORE FILELISTONLY, щоб перевірити файл резервної копії, виявиться, що логічне ім'я файлу, який ви оновили пошкоджено. Останній символ логічного імені файлу скорочується. Наприклад, ви намагаєтеся оновити логічне ім'я бази даних до DB_modified. Проте його неправильно змінено на DB_modifie у файлі резервної копії.Примітка. Ця проблема не виникає, якщо перезапустити службу SQL Server після оновлення логічного імені файлу.
Спосіб вирішення
Сукупні відомості про оновлення
SQL Server 2008 R2
Виправлення цієї проблеми вперше випущено в сукупному пакеті оновлень 6. Щоб отримати додаткові відомості про те, як отримати цей пакет сукупний пакет оновлень для SQL Server 2008 R2 клацніть номер статті в базі знань Microsoft Knowledge Base:
2489376 Сукупний пакет оновлень 6 для SQL Server 2008 R2 Примітка Оскільки збірки сукупні, кожен новий випуск виправлення містить усі виправлення та всі виправлення системи безпеки, які входили в попередній випуск виправлення SQL Server 2008 R2. Радимо застосувати останній випуск виправлення, який містить це виправлення. Щоб отримати докладні відомості, клацніть номер цієї статті бази знань Microsoft:
981356 Збірки SQL Server 2008 R2, випущені після випуску SQL Server 2008 R2
Відомості про виправлення
Від корпорації Майкрософт доступне підтримуване виправлення. Однак, це виправлення, призначене для виправлення, лише проблема, описана в цій статті. Застосуйте це виправлення лише до систем, у яких виникла проблема, описана в цій статті. Це виправлення може отримати додаткове тестування. Таким чином, якщо ви не серйозно постраждали від цієї проблеми, радимо дочекатися наступного оновлення програмного забезпечення, яке містить це виправлення.Якщо виправлення доступне для завантаження, є розділ "Доступне завантаження виправлень" у верхній частині цієї статті бази знань. Якщо цей розділ не відображається, зверніться до служби підтримки клієнтів корпорації Майкрософт, щоб отримати виправлення. Примітка. Якщо виникають додаткові проблеми або якщо потрібно виправити неполадки, можливо, доведеться створити окремий запит на обслуговування. Звичайні витрати на підтримку буде застосовуватися до додаткових питань і питань підтримки, які не мають права на це конкретне виправлення. Повний список номерів телефонів служби підтримки клієнтів і підтримки корпорації Майкрософт або створення окремого запиту на обслуговування відвідайте веб-сайт корпорації Майкрософт:
http://support.microsoft.com/contactus/?ws=supportПримітка Форма "Доступне виправлення, завантаження" відображає мови, для яких доступне виправлення. Якщо ваша мова не відображається, це тому, що виправлення недоступне для цієї мови.
Попередні вимоги
Щоб застосувати це виправлення, слід Microsoft SQL Server 2008 R2 інстальовано.
Необхідність перезавантаження
Не потрібно перезавантажувати комп'ютер після застосування цього виправлення.
Відомості про заміну виправлень
Це виправлення не замінює будь-які інші виправлення.
Відомості про файл
Англійська версія цього виправлення, має атрибути файлу (або новіші атрибути файлів), перелічені в наведеній нижче таблиці. Дати та час для цих файлів зазначені за всесвітнім координованим часом (UTC). Коли ви переглядаєте відомості про файл, вони перетворюються на місцевий час. Щоб знайти різницю між UTC і місцевим часом, перейдіть на вкладку Часовий пояс в елементі "Дата й час" у Панель керування.
32-розрядний екземпляр ядра служб баз даних SQL Server 2008 R2
|
Ім'я файлу |
Версія файлу |
Розмір файлу |
Дата |
Час |
Платформа |
|---|---|---|---|---|---|
|
atxcore.dll |
2009.100.1755.0 |
26464 |
24 грудня 2010 р. |
0:33 |
x86 |
|
datacollectorcontroller.dll |
2009.100.1755.0 |
135520 |
24 грудня 2010 р. |
0:33 |
x86 |
|
Etwcls.mof |
Not applicable |
1116328 |
23 грудня 2010 р. |
3:54 |
Not applicable |
|
instmsdb.sql |
Not applicable |
2241260 |
22 грудня 2010 р. |
20:49 |
Not applicable |
|
mssqlsystemresource.ldf |
Not applicable |
524288 |
22 грудня 2010 р. |
22:52 |
Not applicable |
|
mssqlsystemresource.mdf |
Not applicable |
63569920 |
22 грудня 2010 р. |
22:52 |
Not applicable |
|
sql_engine_core_inst_keyfile.dll |
2009.100.1755.0 |
13664 |
24 грудня 2010 р. |
0:31 |
x86 |
|
sqlaccess.dll |
2009.100.1755.0 |
415584 |
24 грудня 2010 р. |
0:29 |
x86 |
|
sqlagent.exe |
2009.100.1755.0 |
367968 |
24 грудня 2010 р. |
0:34 |
x86 |
|
sqlagent100_msdb_upgrade.sql |
Not applicable |
2371245 |
23 грудня 2010 р. |
3:53 |
Not applicable |
|
sqlos.dll |
2009.100.1755.0 |
14688 |
24 грудня 2010 р. |
0:22 |
x86 |
|
sqlscriptdowngrade.dll |
2009.100.1755.0 |
14688 |
24 грудня 2010 р. |
0:21 |
x86 |
|
sqlscriptupgrade.dll |
2009.100.1755.0 |
4611424 |
24 грудня 2010 р. |
0:21 |
x86 |
|
sqlservr.exe |
2009.100.1755.0 |
42904928 |
24 грудня 2010 р. |
0:34 |
x86 |
|
sqsrvres.dll |
2009.100.1755.0 |
89952 |
24 грудня 2010 р. |
0:21 |
x86 |
64-розрядний екземпляр ядра служб баз даних SQL Server 2008 R2
|
Ім'я файлу |
Версія файлу |
Розмір файлу |
Дата |
Час |
Платформа |
|---|---|---|---|---|---|
|
atxcore.dll |
2009.100.1755.0 |
31584 |
23 грудня 2010 р. |
23:40 |
x64 |
|
datacollectorcontroller.dll |
2009.100.1755.0 |
262496 |
23 грудня 2010 р. |
23:40 |
x64 |
|
Etwcls.mof |
Not applicable |
1116328 |
23 грудня 2010 р. |
3:54 |
Not applicable |
|
instmsdb.sql |
Not applicable |
2241260 |
22 грудня 2010 р. |
20:49 |
Not applicable |
|
mssqlsystemresource.ldf |
Not applicable |
524288 |
22 грудня 2010 р. |
22:52 |
Not applicable |
|
mssqlsystemresource.mdf |
Not applicable |
63569920 |
22 грудня 2010 р. |
22:52 |
Not applicable |
|
sql_engine_core_inst_keyfile.dll |
2009.100.1755.0 |
14176 |
23 грудня 2010 р. |
23:40 |
x64 |
|
sqlaccess.dll |
2009.100.1755.0 |
403296 |
23 грудня 2010 р. |
23:38 |
x86 |
|
sqlagent.exe |
2009.100.1755.0 |
428384 |
23 грудня 2010 р. |
23:40 |
x64 |
|
sqlagent100_msdb_upgrade.sql |
Not applicable |
2371245 |
23 грудня 2010 р. |
3:53 |
Not applicable |
|
sqlos.dll |
2009.100.1755.0 |
15712 |
23 грудня 2010 р. |
23:37 |
x64 |
|
sqlscriptdowngrade.dll |
2009.100.1755.0 |
15712 |
23 грудня 2010 р. |
23:37 |
x64 |
|
sqlscriptupgrade.dll |
2009.100.1755.0 |
4610912 |
23 грудня 2010 р. |
23:37 |
x64 |
|
sqlservr.exe |
2009.100.1755.0 |
61957984 |
23 грудня 2010 р. |
23:40 |
x64 |
|
sqsrvres.dll |
2009.100.1755.0 |
105824 |
23 грудня 2010 р. |
23:37 |
x64 |
Основний екземпляр служб баз даних Itanium-architecture SQL Server 2008 R2
|
Ім'я файлу |
Версія файлу |
Розмір файлу |
Дата |
Час |
Платформа |
|---|---|---|---|---|---|
|
atxcore.dll |
2009.100.1755.0 |
63328 |
23 грудня 2010 р. |
23:05 |
ia64 |
|
datacollectorcontroller.dll |
2009.100.1755.0 |
477024 |
23 грудня 2010 р. |
23:05 |
ia64 |
|
Etwcls.mof |
Not applicable |
1116328 |
23 грудня 2010 р. |
3:54 |
Not applicable |
|
instmsdb.sql |
Not applicable |
2241260 |
22 грудня 2010 р. |
20:49 |
Not applicable |
|
mssqlsystemresource.ldf |
Not applicable |
524288 |
22 грудня 2010 р. |
22:52 |
Not applicable |
|
mssqlsystemresource.mdf |
Not applicable |
63569920 |
22 грудня 2010 р. |
22:52 |
Not applicable |
|
sql_engine_core_inst_keyfile.dll |
2009.100.1755.0 |
19296 |
23 грудня 2010 р. |
23:05 |
ia64 |
|
sqlaccess.dll |
2009.100.1755.0 |
392032 |
23 грудня 2010 р. |
23:01 |
x86 |
|
sqlagent.exe |
2009.100.1755.0 |
1205600 |
23 грудня 2010 р. |
23:09 |
ia64 |
|
sqlagent100_msdb_upgrade.sql |
Not applicable |
2371245 |
23 грудня 2010 р. |
3:53 |
Not applicable |
|
sqlos.dll |
2009.100.1755.0 |
22368 |
23 грудня 2010 р. |
22:56 |
ia64 |
|
sqlscriptdowngrade.dll |
2009.100.1755.0 |
20832 |
23 грудня 2010 р. |
22:56 |
ia64 |
|
sqlscriptupgrade.dll |
2009.100.1755.0 |
4617056 |
23 грудня 2010 р. |
22:56 |
ia64 |
|
sqlservr.exe |
2009.100.1755.0 |
121762656 |
23 грудня 2010 р. |
23:09 |
ia64 |
|
sqsrvres.dll |
2009.100.1755.0 |
188768 |
23 грудня 2010 р. |
22:56 |
ia64 |
Стан
Корпорація Майкрософт підтвердила, що це проблема в продуктах Microsoft, перелічених у розділі "Стосується".
Інші способи вирішення
Щоб вирішити цю проблему, скористайтеся одним із двох способів:
-
Після змінення логічного імені файлу запустіть такі інструкції, щоб перезапустити базу даних:ALTER DATABASE <ім'я бази даних> SET OFFLINEALTER DATABASE <ім'я бази даних> SET ONLINE
-
Під час змінення логічного імені файлу додайте пустий пробіл у нове логічне ім'я. Наприклад, якщо потрібно змінити логічне ім'я на DB_modified, змініть логічне ім'я файлу за допомогою цієї інструкції: ALTER DATABASE <ім'я бази даних> MODIFY FILE (NAME=N'<ім'я бази даних>", NEWNAME='DB_modified ') -- Додавання ' до NEWNAME
Посилання
Щоб отримати додаткові відомості про оператор ALTER DATABASE Transact-SQL відвідайте такий веб-сайт Microsoft Developer Network (MSDN):
Загальні відомості про оператор ALTER DATABASE Transact-SQLЩоб отримати додаткові відомості про інструкцію RESTORE FILELISTONLY Transact-SQL відвідайте такий веб-сайт Microsoft Developer Network (MSDN):
Загальні відомості про оператор RESTORE FILELISTONLY Transact-SQL