Застосовується до
SQL Server 2012 Developer SQL Server 2012 Enterprise SQL Server 2012 Express SQL Server 2012 Standard SQL Server 2012 Web SQL Server 2012 Enterprise Core

Ознаки

Під час відновлення бази даних із резервної копії за допомогою параметра " замінити на" в Microsoft SQL Server 2012 фізичні імена файлів відновленої бази даних, що надходять із бази даних резервної копії, можуть перезаписати фізичні імена файлів наявної бази даних. Наприклад, розглянемо такий сценарій:

  • У вас є два екземпляри SQL Server, InstanceA і Instancев.

  • У вас є база даних, яка має таке саме ім'я, SQSQL, на кожному екземплярі SQL Server.

  • У полі Ім'я файлу даних бази даних SQLDB DB1_InstanceA. МДФ і ім'я файлу журналу – DB1_InstanceA. ldf.

  • У Instancев ім'я файлу даних бази даних SQLDB має DB1_InstanceB. МДФ і ім'я файлу журналу – DB1_InstanceB. ldf.

  • Ви намагаєтеся відновити резервну копію бази даних sqtdb у базі даних у службі SQL, використовуючи параметр " замінити " на основі команди " відновити ".

У цьому сценарії фізичні імена файлів на SQLDB для InstanceB змінюються на DB1_InstanceA. МДФ і DB1_InstanceA. ldf. 

Причина

Ця поведінка виконується за допомогою конструктора в SQL Server 2012.

Інші способи вирішення

Щоб вирішити цю проблему, не використовуйте команду " замінити " на кнопці " відновити ". Натомість використовуйте параметр " з переміщенням ".Примітка. Параметр " за допомогою переміщення " дає змогу змінити ім'я фізичного файлу.

Додаткові відомості

Параметр " з переміщенням " потрібен лише перший раз, коли ви використовуєте команду " відновити ". Під час спроби відновити базу даних із резервної копії SQL Server порівнює значення вилки відновлення в базі даних. Після цього набір параметрів резервного копіювання має наведені нижче дії, залежно від того, чи збігаються ці значення:

  • Якщо є відповідність, набір резервних копій продовжує використовувати імена файлів цільової бази даних.

  • Якщо значення різні, набір резервних копій замінює фізичні імена файлів цільової бази даних за допомогою імен із набору резервних копій.

Під час використання параметра " з переміщенням " разом із командою " відновити " слід виконати наведені нижче дії.

  1. Нова вилка відновлення створюється на цільовому сервері.

  2. Під час наступної операції відновлення ідентифікатори вилку відновлення з набору резервних копій відповідають ідентифікаторами цільового сервера.

  3. Команда " відновити ", яка використовується разом із ПАРАМЕТРОМ " замінити на", зберігає фізичні імена на цільовому сервері.

Докладні відомості про команду відновлення наведено в статті відновлення (TRANSACT-SQL)

Потрібна додаткова довідка?

Потрібні додаткові параметри?

Ознайомтеся з перевагами передплати, перегляньте навчальні курси, дізнайтесь, як захистити свій пристрій тощо.