Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Link Server Failover Partner  [new]
ТАРАКАН
Member

Откуда:
Сообщений: 439
Microsoft SQL Server 2008 (SP3) - 10.0.5500.0 (Intel X86) Sep 22 2011 00:28:06 Copyright (c) 1988-2008 Microsoft Corporation Enterprise Edition on Windows NT 5.2 <X86> (Build 3790: Service Pack 2)

Добрый день всем!


Столкнулся с необходимостью настроить LinkServer на сервера MS SQL которые находятся в зеркале.
Пробовал настроить по статье http://msdn.microsoft.com/ru-ru/library/ms366348(v=SQL.90).aspx результат нулевой.

Был ли у кого опыт? можете поделиться?


СпасибО!
24 ноя 11, 13:51    [11651361]     Ответить | Цитировать Сообщить модератору
 Re: Link Server Failover Partner  [new]
Eagle_84
Member

Откуда: Москва
Сообщений: 1535
если я дам ответ:
пробовал, все нормально - устроит, думаю, что не устроит :)

что именно не получилось? какие ошибки?
24 ноя 11, 15:09    [11652121]     Ответить | Цитировать Сообщить модератору
 Re: Link Server Failover Partner  [new]
ТАРАКАН
Member

Откуда:
Сообщений: 439
===================================

Failed to retrieve data for this request. (Microsoft.SqlServer.Management.Sdk.Sfc)

------------------------------
For help, click: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&LinkId=20476

------------------------------
Program Location:

at Microsoft.SqlServer.Management.Sdk.Sfc.Enumerator.Process(Object connectionInfo, Request request)
at Microsoft.SqlServer.Management.UI.VSIntegration.ObjectExplorer.NavigableItemBuilder.BuildDynamicItemWithQuery(IList`1 nodes, INodeInformation source, INavigableItem sourceItem, String urnQuery, Boolean registerBuilder, Boolean registerBuiltItems)
at Microsoft.SqlServer.Management.UI.VSIntegration.ObjectExplorer.NavigableItemBuilder.BuildDynamicItem(IList`1 nodes, INodeInformation source, INavigableItem sourceItem, IFilterProvider filter)
at Microsoft.SqlServer.Management.UI.VSIntegration.ObjectExplorer.NavigableItemBuilder.Build(IList`1 nodes, INodeInformation source, INavigableItem sourceItem, IFilterProvider filter)
at Microsoft.SqlServer.Management.UI.VSIntegration.ObjectExplorer.NavigableItem.GetChildren(IGetChildrenRequest request)
at Microsoft.SqlServer.Management.UI.VSIntegration.ObjectExplorer.ExplorerHierarchyNode.BuildChildren(WaitHandle quitEvent)

===================================

An exception occurred while executing a Transact-SQL statement or batch. (Microsoft.SqlServer.ConnectionInfo)

------------------------------
Program Location:
28 ноя 11, 13:34    [11670562]     Ответить | Цитировать Сообщить модератору
 Re: Link Server Failover Partner  [new]
ТАРАКАН
Member

Откуда:
Сообщений: 439
был ли у кого опыт настройки линк сервера на зеркальные сервера?
28 ноя 11, 19:57    [11674052]     Ответить | Цитировать Сообщить модератору
 Re: Link Server Failover Partner  [new]
ТАРАКАН
Member

Откуда:
Сообщений: 439
Народ, у вас нет опыта или я опять не всю инфу выдал?
29 ноя 11, 17:40    [11679385]     Ответить | Цитировать Сообщить модератору
 Re: Link Server Failover Partner  [new]
Glory
Member

Откуда:
Сообщений: 104751
ТАРАКАН
у вас нет опыта

Вы статистический опрос устраиваете что ли ?

ТАРАКАН
или я опять не всю инфу выдал?

Было заданно _два_ вопроса
"что именно не получилось? какие ошибки? "
29 ноя 11, 20:53    [11680156]     Ответить | Цитировать Сообщить модератору
 Re: Link Server Failover Partner  [new]
ТАРАКАН
Member

Откуда:
Сообщений: 439
1) Не могу создать Линк на Сервере1 к Серверу2 и зеркальному серверу3 чтоб при выходит Сервера2 линк автоматом подхватывал Сервер3
2) Ошибку я привел см.выше


Скрипт создания линка:

/****** Object:  LinkedServer [Имя_Линка]    Script Date: 11/30/2011 10:27:19 ******/
EXEC master.dbo.sp_addlinkedserver @server = N'Имя_Линка', @srvproduct=N'SQLNCLI10', @provider=N'SQLNCLI10', @datasrc=N'Server=Сервер2\SQL2K8; FailoverPartner=Сервер3\SQL2K8'
 /* For security reasons the linked server remote logins password is changed with ######## */
EXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname=N'Имя_Линка',@useself=N'False',@locallogin=NULL,@rmtuser=N'Имя_логина',@rmtpassword='пароль'

GO

EXEC master.dbo.sp_serveroption @server=N'Имя_Линка', @optname=N'collation compatible', @optvalue=N'false'
GO

EXEC master.dbo.sp_serveroption @server=N'Имя_Линка', @optname=N'data access', @optvalue=N'true'
GO

EXEC master.dbo.sp_serveroption @server=N'Имя_Линка', @optname=N'dist', @optvalue=N'false'
GO

EXEC master.dbo.sp_serveroption @server=N'Имя_Линка', @optname=N'pub', @optvalue=N'false'
GO

EXEC master.dbo.sp_serveroption @server=N'Имя_Линка', @optname=N'rpc', @optvalue=N'true'
GO

EXEC master.dbo.sp_serveroption @server=N'Имя_Линка', @optname=N'rpc out', @optvalue=N'true'
GO

EXEC master.dbo.sp_serveroption @server=N'Имя_Линка', @optname=N'sub', @optvalue=N'false'
GO

EXEC master.dbo.sp_serveroption @server=N'Имя_Линка', @optname=N'connect timeout', @optvalue=N'0'
GO

EXEC master.dbo.sp_serveroption @server=N'Имя_Линка', @optname=N'collation name', @optvalue=null
GO

EXEC master.dbo.sp_serveroption @server=N'Имя_Линка', @optname=N'lazy schema validation', @optvalue=N'false'
GO

EXEC master.dbo.sp_serveroption @server=N'Имя_Линка', @optname=N'query timeout', @optvalue=N'0'
GO

EXEC master.dbo.sp_serveroption @server=N'Имя_Линка', @optname=N'use remote collation', @optvalue=N'true'
GO

EXEC master.dbo.sp_serveroption @server=N'Имя_Линка', @optname=N'remote proc transaction promotion', @optvalue=N'true'
GO
30 ноя 11, 10:29    [11681582]     Ответить | Цитировать Сообщить модератору
 Re: Link Server Failover Partner  [new]
Glory
Member

Откуда:
Сообщений: 104751
ТАРАКАН
1) Не могу создать Линк на Сервере1 к Серверу2 и зеркальному серверу3 чтоб при выходит Сервера2 линк автоматом подхватывал Сервер3

"Не могу создать" - это значит, у меня рука не поднимается ?
Или все же, я запустил такой то мастер, дошел до такого-то диалога и получил ошибку ?
Вы серьезно думаете, что отсюда всем видно, что и где вы делаете ?

ТАРАКАН
Скрипт создания линка:


Мда
И на какой же строке скрипта происходит ошибка ?
30 ноя 11, 10:39    [11681627]     Ответить | Цитировать Сообщить модератору
 Re: Link Server Failover Partner  [new]
ТАРАКАН
Member

Откуда:
Сообщений: 439
Скрипт выполняется корректно, линк создается, но при попытке сделать запрос через линк выходит ошибка.

запрос:

Select * from Имя_Линка.Имя_БД.dbo.Имя_таблицы

ошибка:

OLE DB provider "SQLNCLI10" for linked server "Имя_Линка" returned message "Login timeout expired".
OLE DB provider "SQLNCLI10" for linked server "Имя_Линка" returned message "A network-related or instance-specific error has occurred while establishing a connection to SQL Server. Server is not found or not accessible. Check if instance name is correct and if SQL Server is configured to allow remote connections. For more information see SQL Server Books Online.".
Msg 65535, Level 16, State 1, Line 0
SQL Server Network Interfaces: Error Locating Server/Instance Specified [xFFFFFFFF].
30 ноя 11, 10:47    [11681676]     Ответить | Цитировать Сообщить модератору
 Re: Link Server Failover Partner  [new]
Mnior
Member

Откуда: Кишинёв
Сообщений: 6724
ТАРАКАН
OLE DB provider "SQLNCLI10" for linked server "Имя_Линка" returned message "Login timeout expired".
OLE DB provider "SQLNCLI10" for linked server "Имя_Линка" returned message "A network-related or instance-specific error has occurred while establishing a connection to SQL Server. Server is not found or not accessible. Check if instance name is correct and if SQL Server is configured to allow remote connections. For more information see SQL Server Books Online.".
Msg 65535, Level 16, State 1, Line 0
SQL Server Network Interfaces: Error Locating Server/Instance Specified [xFFFFFFFF].
Есть google translate. Читайте ошибки хоть иногда.
30 ноя 11, 11:13    [11681857]     Ответить | Цитировать Сообщить модератору
 Re: Link Server Failover Partner  [new]
Mnior
Member

Откуда: Кишинёв
Сообщений: 6724
А ещё, коль вы в буржуйском не секёте, то аоставте в настройках своего логина язык по умолчанию - русский. Чтоб ошибки на русском были (некоторые).
30 ноя 11, 11:16    [11681879]     Ответить | Цитировать Сообщить модератору
 Re: Link Server Failover Partner  [new]
Glory
Member

Откуда:
Сообщений: 104751
@datasrc=N'Server=Сервер2\SQL2K8; FailoverPartner=Сервер3\SQL2K8'
это что за параметры вы придумали ?
30 ноя 11, 11:24    [11681962]     Ответить | Цитировать Сообщить модератору
 Re: Link Server Failover Partner  [new]
Александр Гладченко
Member

Откуда:
Сообщений: 10802
Блог
Связанные сервера отлично дружат с зеркалированием. Мы этим активно пользуемся. Вот пример соответствующего сценария:

EXEC master.dbo.sp_addlinkedserver 
@server = N'SUPERSERVER.avp.ru'
,@srvproduct=N''
,@provider=N'SQLNCLI'
,@provstr=N'Server=SUPERSERVER.avp.ru; FailoverPartner=SUPERSERVER-MIRROR.avp.ru; Network=dbmssocn'
GO
EXEC master.dbo.sp_addlinkedsrvlogin 
@rmtsrvname = N'SUPERSERVER.avp.ru'
, @locallogin = NULL 
, @useself = N'False'
, @rmtuser = N'SUPERMAN'
, @rmtpassword = N'SUPERPASSWORD'
GO


EXEC sp_helpserver
30 ноя 11, 12:13    [11682334]     Ответить | Цитировать Сообщить модератору
 Re: Link Server Failover Partner  [new]
ТАРАКАН
Member

Откуда:
Сообщений: 439
Glory
@datasrc=N'Server=Сервер2\SQL2K8; FailoverPartner=Сервер3\SQL2K8'
это что за параметры вы придумали ?


Это не мы, а Microsoft http://msdn.microsoft.com/ru-ru/library/ms366348(v=SQL.90).aspx
30 ноя 11, 13:25    [11682968]     Ответить | Цитировать Сообщить модератору
 Re: Link Server Failover Partner  [new]
ТАРАКАН
Member

Откуда:
Сообщений: 439
Александр Гладченко
Связанные сервера отлично дружат с зеркалированием. Мы этим активно пользуемся. Вот пример соответствующего сценария:

EXEC master.dbo.sp_addlinkedserver 
@server = N'SUPERSERVER.avp.ru'
,@srvproduct=N''
,@provider=N'SQLNCLI'
,@provstr=N'Server=SUPERSERVER.avp.ru; FailoverPartner=SUPERSERVER-MIRROR.avp.ru; Network=dbmssocn'
GO
EXEC master.dbo.sp_addlinkedsrvlogin 
@rmtsrvname = N'SUPERSERVER.avp.ru'
, @locallogin = NULL 
, @useself = N'False'
, @rmtuser = N'SUPERMAN'
, @rmtpassword = N'SUPERPASSWORD'
GO


EXEC sp_helpserver



Большое Спасибо заработало!!!

Нашел в чем была ошибка

вместо того чтоб сервера прописать в @provstr я указывал в своем скрипте в поле @datasrc
30 ноя 11, 13:44    [11683184]     Ответить | Цитировать Сообщить модератору
 Re: Link Server Failover Partner  [new]
Glory
Member

Откуда:
Сообщений: 104751
ТАРАКАН
вместо того чтоб сервера прописать в @provstr я указывал в своем скрипте в поле @datasrc


ТАРАКАН
Glory
@datasrc=N'Server=Сервер2\SQL2K8; FailoverPartner=Сервер3\SQL2K8'
это что за параметры вы придумали ?


Это не мы, а Microsoft http://msdn.microsoft.com/ru-ru/library/ms366348(v=SQL.90).aspx
30 ноя 11, 13:53    [11683289]     Ответить | Цитировать Сообщить модератору
 Re: Link Server Failover Partner  [new]
ТАРАКАН
Member

Откуда:
Сообщений: 439
Glory
ТАРАКАН
вместо того чтоб сервера прописать в @provstr я указывал в своем скрипте в поле @datasrc


ТАРАКАН
Glory
@datasrc=N'Server=Сервер2\SQL2K8; FailoverPartner=Сервер3\SQL2K8'
это что за параметры вы придумали ?


Это не мы, а Microsoft http://msdn.microsoft.com/ru-ru/library/ms366348(v=SQL.90).aspx


Glory, я не понял твой намек ;)


Все прекрасно линк работает, но на данный момент появилась проблема не смотря на то, что в линке указанно какой именно Логин использовать:

автор
EOleException: [Microsoft][ODBC SQL Server Driver][SQL Server]Could not find
server ''Имя_Линка'' in sys.servers. Verify that the correct server name was
specified. If necessary, execute the stored procedure sp_addlinkedserver to add
the server to sys.servers
ErrorCode: $80040E14
Database: UGP2000

[Microsoft][ODBC SQL Server Driver][SQL Server]Could not find server
''Имя_Линка'' in sys.servers. Verify that the correct server name was specified. If
necessary, execute the stored procedure sp_addlinkedserver to add the server to
sys.servers.
NativeError: $1C22 (7202)

----------- ADO Stored procedure ----------
EXEC Имя_Процедуры
@id_sc_channel = 6,
@is_admin_mode = 0


-======= Owner form =======-
ClassName : Tfrm_sc_Имя_Функции
Name : frm_sc_Имя_Функции
Caption : 'Имя Объекта'

------- Trace history -----------
14:17:40.843 30.11.2011 TLxForm.act_RefreshAllExecute : Befor RefreshAll [Class : Tfrm_sc_Имя_Функции]
30 ноя 11, 14:27    [11683638]     Ответить | Цитировать Сообщить модератору
 Re: Link Server Failover Partner  [new]
ТАРАКАН
Member

Откуда:
Сообщений: 439
нашел в чем проблема...
из-за того что мы сменили '@datasrc' на '@provstr' понадобилось прописать Логин и пароль в строке подключения, а не в 'Security' линка.

в итоге рабочий скрипт получился следующий:

EXEC master.dbo.sp_addlinkedserver @server = N'Имя_линка', @srvproduct=N'Сервер2\SQL2K8', @provider=N'SQLNCLI10', @provstr=N'Server=Сервер2\SQL2K8;FailoverPartner=Сервер3\SQL2K8;User ID=Имя_Логина;Password=пароль;Network=dbmssocn',@catalog=N'Имя_БД'

EXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname=N'Имя_линка',@useself=N'False',@locallogin=NULL,@rmtuser=N'Имя_Логина',@rmtpassword='пароль'

GO

EXEC master.dbo.sp_serveroption @server=N'Имя_линка', @optname=N'collation compatible', @optvalue=N'true'
GO

EXEC master.dbo.sp_serveroption @server=N'Имя_линка', @optname=N'data access', @optvalue=N'true'
GO

EXEC master.dbo.sp_serveroption @server=N'Имя_линка', @optname=N'dist', @optvalue=N'false'
GO

EXEC master.dbo.sp_serveroption @server=N'Имя_линка', @optname=N'pub', @optvalue=N'false'
GO

EXEC master.dbo.sp_serveroption @server=N'Имя_линка', @optname=N'rpc', @optvalue=N'true'
GO

EXEC master.dbo.sp_serveroption @server=N'Имя_линка', @optname=N'rpc out', @optvalue=N'true'
GO

EXEC master.dbo.sp_serveroption @server=N'Имя_линка', @optname=N'sub', @optvalue=N'false'
GO

EXEC master.dbo.sp_serveroption @server=N'Имя_линка', @optname=N'connect timeout', @optvalue=N'0'
GO

EXEC master.dbo.sp_serveroption @server=N'Имя_линка', @optname=N'collation name', @optvalue=null
GO

EXEC master.dbo.sp_serveroption @server=N'Имя_линка', @optname=N'lazy schema validation', @optvalue=N'false'
GO

EXEC master.dbo.sp_serveroption @server=N'Имя_линка', @optname=N'query timeout', @optvalue=N'0'
GO

EXEC master.dbo.sp_serveroption @server=N'Имя_линка', @optname=N'use remote collation', @optvalue=N'true'
GO

EXEC master.dbo.sp_serveroption @server=N'Имя_линка', @optname=N'remote proc transaction promotion', @optvalue=N'true'
GO
30 ноя 11, 14:59    [11683922]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить