Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Ошибка копирования БД - SMO  [new]
tsuker
Member

Откуда:
Сообщений: 8
При копировании через мастер копирования - SMO (без отключения БД).
MSSQL 2012
Ошибка:
OnError,SERVER,NT AUTHORITY\система,,{F50CDE12-C012-40E8-ADAC-65BDE5E5D8B7},{417525CB-F7FF-45F9-9E09-70718CAFD7AC},28.01.2019 16:45:24,28.01.2019 16:45:24,0,0x,Произошла ошибка при передаче данных. Дополнительные сведения см. во внутреннем исключении.
StackTrace:    в Microsoft.SqlServer.Management.Smo.Transfer.TransferData()
   в Microsoft.SqlServer.Dts.Tasks.TransferObjectsTask.TransferObjectsTask.TransferDatabasesUsingSMOTransfer()
InnerException-->Пользователь, группа или роль "sqlRootUsername" уже существует в текущей базе данных.
StackTrace:    в System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
   в System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)
   в System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady)
   в System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async, Int32 timeout, Boolean asyncWrite)
   в System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(TaskCompletionSource`1 completion, String methodName, Boolean sendToPipe, Int32 timeout, Boolean& usedCache, Boolean asyncWrite, Boolean inRetry)
   в System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
   в Microsoft.SqlServer.Management.Smo.Transfer.ExecuteStatements(SqlConnection destinationConnection, IEnumerable`1 statements, SqlTransaction transaction)
   в Microsoft.SqlServer.Management.Smo.Transfer.TransferData()
28 янв 19, 18:44    [21796175]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка копирования БД - SMO  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31354
tsuker
Ошибка:
Посмотрите для начала версии сервера и клиента, они должны быть одинаковые.
28 янв 19, 20:16    [21796228]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка копирования БД - SMO  [new]
tsuker
Member

Откуда:
Сообщений: 8
alexeyvg,

Версия сервера:
Microsoft SQL Server 2012 (SP3) (KB3072779) - 11.0.6020.0 (X64)
Oct 20 2015 15:36:27
Copyright (c) Microsoft Corporation
Enterprise Edition (64-bit) on Windows NT 6.1 <X64> (Build 7601: Service Pack 1)

Версия Среда SQL Server Management Studio: 11.0.6020.0
28 янв 19, 22:02    [21796311]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка копирования БД - SMO  [new]
tsuker
Member

Откуда:
Сообщений: 8
Уточню - копирование производиться в рамках одного сервера и одного инстанса, под одним тем же юзером
28 янв 19, 23:46    [21796372]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка копирования БД - SMO  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31354
tsuker
Уточню - копирование производиться в рамках одного сервера и одного инстанса, под одним тем же юзером
В новую пустую базу?
Что вы вообще делаете? Копируете данные, таблицу, базу?
Мастер вам говорит, что пользователь, которого вы хотите создать, уже существует. Он там действительно уже был?
29 янв 19, 00:37    [21796386]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка копирования БД - SMO  [new]
tsuker
Member

Откуда:
Сообщений: 8
alexeyvg, прошу прощения не уточнил сразу.
Через мастер копирования - создается копия базы но с другим именем рядом с исходной.
Операция копирования завершается ошибкой.
Базы с таким именем нет- ее создает мастер копирования, соответственно он же туда и копируется юзера

--
Задача - клонировать базу , без отключения основной
29 янв 19, 00:59    [21796388]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка копирования БД - SMO  [new]
aleks222
Member

Откуда:
Сообщений: 952
tsuker
Задача - клонировать базу , без отключения основной

Освой backup/restore страдалец.
29 янв 19, 05:57    [21796423]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка копирования БД - SMO  [new]
tsuker
Member

Откуда:
Сообщений: 8
aleks222,
Я то его освоил)). но стоит задача что бы копировать имено через меню Копировать базу
29 янв 19, 08:12    [21796457]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка копирования БД - SMO  [new]
aleks222
Member

Откуда:
Сообщений: 952
tsuker
aleks222,
Я то его освоил)). но стоит задача что бы копировать имено через меню Копировать базу

Не стоит рвать зубы через задний проход.
29 янв 19, 12:23    [21796687]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка копирования БД - SMO  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31354
tsuker
Через мастер копирования - создается копия базы но с другим именем рядом с исходной.
Операция копирования завершается ошибкой.
Базы с таким именем нет- ее создает мастер копирования, соответственно он же туда и копируется юзера
А этот юзер "sqlRootUsername" в исходной базе есть, он нормальный, сопоставлен с логином? Что там показывает, если посмотреть в его свойства?
29 янв 19, 15:33    [21796960]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка копирования БД - SMO  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31354
aleks222
tsuker
aleks222,
Я то его освоил)). но стоит задача что бы копировать имено через меню Копировать базу

Не стоит рвать зубы через задний проход.
Мало ли, почему дали такое заданиею. Может, начальник нажимает кнопочку, у него ошибка, велел разобраться.
Это всё таки ненормально, если обычная операция копирования базы визардом приводит к ошибке в студии. И нормально, если специалист сможет её пофиксить.
29 янв 19, 15:35    [21796966]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка копирования БД - SMO  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 7754
tsuker,

попробуйте установить SSMS 17.9.
29 янв 19, 16:36    [21797072]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка копирования БД - SMO  [new]
tsuker
Member

Откуда:
Сообщений: 8
alexeyvg, да юзер в порядке существует у него стоит роль db_owner а на сервре стоит sysadmin. все как у sa.
29 янв 19, 16:55    [21797101]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка копирования БД - SMO  [new]
Yasha123
Member

Откуда:
Сообщений: 1833
tsuker
юзер в порядке существует у него стоит роль db_owner а на сервре стоит sysadmin. все как у sa.

ну вот и не как у sa, и ничего не в порядке.
если логин сисадмин, то он во все базы мапится как dbo.
вы когда-нибудь видели юзера sa в базах?
а ваш юзер, если вы не сочиняете, и админ, и в базе имеется не как dbo.
это ненормально.
хотя и воспроизводимо
29 янв 19, 17:13    [21797128]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка копирования БД - SMO  [new]
tsuker
Member

Откуда:
Сообщений: 8
Yasha123,
Вот скрин как оно указано
https://yadi.sk/i/klbBSIrKfm0yDQ
https://yadi.sk/i/ckdEWRntwf6j_A
29 янв 19, 18:07    [21797194]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка копирования БД - SMO  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31354
tsuker
Yasha123,
Вот скрин как оно указано
[/url]https://yadi.sk/i/klbBSIrKfm0yDQ
[url=https://yadi.sk/i/ckdEWRntwf6j_A]https://yadi.sk/i/ckdEWRntwf6j_A
1C_ERP_TEST - эта новая база, её не было, и она создалась в результате создания мастером копирования этой базы из какой то другой базы?
И в ней появился пользователь sqlRootUsername?
29 янв 19, 20:55    [21797285]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка копирования БД - SMO  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31354
alexeyvg
tsuker
Yasha123,
Вот скрин как оно указано
[/url]https://yadi.sk/i/klbBSIrKfm0yDQ
[url=https://yadi.sk/i/ckdEWRntwf6j_A]https://yadi.sk/i/ckdEWRntwf6j_A
1C_ERP_TEST - эта новая база, её не было, и она создалась в результате создания мастером копирования этой базы из какой то другой базы?
И в ней появился пользователь sqlRootUsername?
Кстати, там третья буква явно v, а не R, хотя вы пытались это замазать.
29 янв 19, 20:56    [21797287]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка копирования БД - SMO  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31354
tsuker
Yasha123,
Вот скрин как оно указано
[/url]https://yadi.sk/i/klbBSIrKfm0yDQ
[url=https://yadi.sk/i/ckdEWRntwf6j_A]https://yadi.sk/i/ckdEWRntwf6j_A
И окно роли сервера тут ни при чём.

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

А вы смотрите на логины.

Вам нужно посмотреть список пользователей базы, а не список логинов сервера (а так же список ролей и групп базы)
29 янв 19, 21:00    [21797290]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка копирования БД - SMO  [new]
tsuker
Member

Откуда:
Сообщений: 8
alexeyvg,
Нет новая БД не создаеться. Не совсем понял что вы имеете ввиду.

-
Удалил всех созданных юзеров из БД(оставил только по умолчанию которые были) и попробовал ее скопировать:

StackTrace: в Microsoft.SqlServer.Management.Smo.Transfer.TransferData()
в Microsoft.SqlServer.Dts.Tasks.TransferObjectsTask.TransferObjectsTask.TransferDatabasesUsingSMOTransfer()
InnerException-->Предложенный новый владелец базы данных уже является пользователем или ему присвоен псевдоним в базе данных.
30 янв 19, 10:45    [21797523]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка копирования БД - SMO  [new]
Yasha123
Member

Откуда:
Сообщений: 1833
вот же еще раз: если юзер овнер базы или сисадмин, то он мапится в dbo.
дропните вашего sqlRootUsername как юзера, он уже и так там есть, он dbo
30 янв 19, 11:32    [21797587]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка копирования БД - SMO  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31354
tsuker
alexeyvg,
Нет новая БД не создаеться.
Я тогда не понял, а почему вы ответили, что создаётся:
tsuker
alexeyvg, прошу прощения не уточнил сразу.
Через мастер копирования - создается копия базы но с другим именем рядом с исходной.
Операция копирования завершается ошибкой.
Базы с таким именем нет- ее создает мастер копирования, соответственно он же туда и копируется юзера


Я же не просто так спрашиваю, от того, что вы делаете, зависит то, что происходит и как появляется ошибка.
tsuker
Удалил всех созданных юзеров из БД(оставил только по умолчанию которые были) и попробовал ее скопировать:
Внимательно смотрите, потому что, как упомянул Yasha123, имя пользователя может отличаться от имени логина.
30 янв 19, 13:36    [21797733]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить