Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Подключение и отключение к серверу  [new]
Обломов, садись - два!
Guest
Добрый день. Необходимо осуществить частичный перенос данных между двумя серверами.
Перенос будет производиться ежемесячно, так что вручную бекапить и восстанавливать - не получится.

Первый сервер - mssql 7, второй - mssql 2005.
Для переноса данных написан скрипт, который будет отрабатывать в джобах.
Смущает только одно. Вот код подключения к серверу с mssql7:

EXEC master.dbo.sp_addlinkedserver @server = 'xx.xx.xx.xx' , @srvproduct=N'SQL Server'
EXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname= 'xx.xx.xx.xx',@useself=N'False',@locallogin=NULL,@rmtuser=sa ,@rmtpassword=mypassword 


Отрабатывает он отлично, т.е. подключение происходит удачно и дальнейший код по переносу данных отрабатывает удачно.
Далее, запускаем его второй раз и выходит предупреждение о том, что сервер уже подключен, после чего перенос данных работает дальше.
Для того, что бы избавиться от предупреждения, мне, судя по всему надо как-то отключить подключенный сервер 'xx.xx.xx.xx' в самом конце скрипта. Собственно вопрос: как?

Делал вот так:
exec sp_dropserver 'xx.xx.xx.xx', 'droplogins'

Отключился.
Запускаю скрипт и получаю ошибку:
Сообщение 102, уровень 15, состояние 1, строка 184
Incorrect syntax near 'xx.xx.xx.xx'.

Если закомментировать код, что написан чуть выше, то все работает по прежнему.

Жду совета, что делать :)
31 янв 12, 12:29    [12002427]     Ответить | Цитировать Сообщить модератору
 Re: Подключение и отключение к серверу  [new]
Glory
Member

Откуда:
Сообщений: 104751
Обломов, садись - два!
Вот код подключения к серверу с mssql7:

Это не подключение
Это создание linked server-а
31 янв 12, 12:31    [12002444]     Ответить | Цитировать Сообщить модератору
 Re: Подключение и отключение к серверу  [new]
Slava_Nik
Member

Откуда: из России
Сообщений: 901
1 первый раз создался LinkedServer, а второй раз он вам не дает создать
один раз короче его надо создать и в дальнейшем использовать
31 янв 12, 12:33    [12002463]     Ответить | Цитировать Сообщить модератору
 Re: Подключение и отключение к серверу  [new]
Обломов, садись - два!
Guest
Спасибо за ответы, а после того, как создал - удалить то его можно?
Просто скрипт придется рассылать по множеству филиалов и не хочется каждый раз рассказывать в каждом филиале о том, что этот кусок необходимо использовать всего 1 раз.
31 янв 12, 12:34    [12002479]     Ответить | Цитировать Сообщить модератору
 Re: Подключение и отключение к серверу  [new]
Glory
Member

Откуда:
Сообщений: 104751
Обломов, садись - два!
не хочется каждый раз рассказывать в каждом филиале о том, что этот кусок необходимо использовать всего 1 раз.

Что мешает при добавлении линкед сервера проверять его наличие ?
31 янв 12, 12:35    [12002490]     Ответить | Цитировать Сообщить модератору
 Re: Подключение и отключение к серверу  [new]
Обломов, садись - два!
Guest
Glory
Обломов, садись - два!
не хочется каждый раз рассказывать в каждом филиале о том, что этот кусок необходимо использовать всего 1 раз.

Что мешает при добавлении линкед сервера проверять его наличие ?


Недостаточность знаний в этом вопросе.
Подскажете как это сделать?
31 янв 12, 12:37    [12002504]     Ответить | Цитировать Сообщить модератору
 Re: Подключение и отключение к серверу  [new]
Glory
Member

Откуда:
Сообщений: 104751
Обломов, садись - два!
Подскажете как это сделать?

в таблице серверов поискать сервер с нужным именем
31 янв 12, 12:44    [12002554]     Ответить | Цитировать Сообщить модератору
 Re: Подключение и отключение к серверу  [new]
Обломов, садись - два!
Guest
хм, будем капать в этом направлении. Спасибо за подсказку.
31 янв 12, 12:45    [12002565]     Ответить | Цитировать Сообщить модератору
 Re: Подключение и отключение к серверу  [new]
underalex
Member

Откуда: Киев
Сообщений: 50
Обломов, садись - два!
Glory
пропущено...

Что мешает при добавлении линкед сервера проверять его наличие ?


Недостаточность знаний в этом вопросе.
Подскажете как это сделать?


if not exists (select 1 from sys.servers where name = N'xx.xx.xx.xx')
EXEC master.dbo.sp_addlinkedserver @server = 'xx.xx.xx.xx' , @srvproduct=N'SQL Server'
31 янв 12, 13:59    [12003784]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить