2015-01-18 3 views
6

Я пытаюсь скопировать базу данных. Когда вы проходите Мастер копирования базы данных, я получаю ошибку выполнения SQL-запроса Execute SQL Server. Ошибка гласит«Сбой задания» при копировании базы данных SQL Server 2012

The job failed. Check the event log on the destination server for details

выполнения операции

  • Добавить журнал для пакета (Success)

  • Добавить задачу для передачи объектов базы данных (Success)

  • Создать пакет (Success)

  • Старт SQL Server Agent Работа (Success)

  • Выполнить задание агента SQL Server (Error)

Ошибка:

The job failed. Check the event log on the destination server for details. (Copy Database Wizard)

Я не могу показаться, чтобы найти то, что причиной этой проблемы. Использую ли я правильный подход? Мне просто нужно скопировать эту базу данных. Заранее спасибо.

+0

Пожалуйста, используйте резервную копию/восстановление, а не базу данных «Мастер» базы данных копирования или отсоедините/присоедините. –

+0

спасибо Аарон Бертран. моя проблема решена, я использую метод резервного копирования/восстановления –

ответ

11

если вы пытаетесь клонировать свою базу данных на том же сервере, попробуйте следующее:

  1. Создать резервную копию базы данных, которую требуется скопировать
  2. правой кнопкой мыши на Databases и выберите Restore Database
  3. Выберите базу данных, которую вы хотите скопировать из From Database , в раскрывающемся списке Source for restore раздел
  4. Введите новую новость в To database fie ld в разделе Destination for Restore - это не может быть имя существующей базы данных .
  5. Нажмите OK
+1

, чтобы выполнить эту работу, мне также пришлось изменить имена Restore As и проверить параметр Overwrite, даже если файлы не существуют. – nuander

5

Проверка журнала событий Windows.

  1. Просмотр событий Журналы
  2. Окна
  3. Применение
  4. Посмотрите на сообщения Предупреждение/об ошибках, связанных с любым из следующих:
    • SQLAgent
    • SQLISPackage
  5. Читать Ошибка.

Вот пример.

SQLAgent Related Errror

Вот некоторые из ошибок и резолюций, с которыми мы столкнулись.

Unable to determine if the owner (...) of job ... has server access (reason: Could not obtain information about Windows NT group/user '...', error code 0x54b. [SQLSTATE 42000] (Error 15404)).

Нам нужно, чтобы убедиться, что во время мастера копирования баз данных, учетная запись, с которой мы вошли в конечном сервер имела соответствующие привилегии и те привилегии были получены (в конечном итоге мы использовали sa счетов.) Это разрешили вышеуказанное предупреждение.

Access is denied

Нам необходимо убедиться, что локальный агент SQL Server имеет соответствующие права на локальном сервере. Таким образом, мы сделали регистрацию агента SQL Server как локальную. Это сработало, потому что Local System является sysadmin в нашем экземпляре SQL Server.

Could not read metadata, possibly due to insufficient access rights.

Нам нужно было предоставить дополнительные права на локальную систему.

  • От SSMS
  • Щелкните правой кнопкой мыши на имени сервера и выберите свойства
  • Щелкните на вкладке Разрешения
  • выберите пользователя Локальная система
  • по настойчивой разрешений почти на дне есть " Просмотреть любое определение "предоставить это. Посмотрите, будет ли это работать.

xp_regread() returned error 5, 'Access is denied.'

Это тупик нас и мы задали другой вопрос: xp_regread() returned error 5, 'Access is denied.'

0

Это, как правило, потому, что ваша учетная запись (NT Service \ SQLSERVERAGENT) не имеют разрешения на папку данных (..Microsoft SQL Server \ MSSQL13.MSSQLSERVER \ MSSQL \ DATA). Установите его на полный уровень управления ok

Учетная запись выше по умолчанию, если вы хотите проверить, какой агент работает с учетной записью, перейдите на services.msc. check account logon