Создание связанного сервера с базой данных SQL Azure не работает - PullRequest
0 голосов
/ 30 октября 2019

Я выполнил следующий шаг из вопроса, на который был дан ответ в отношении связанного сервера для БД Azure

Мне нужно добавить связанный сервер к SQL-серверу MS Azure

-- Make a link to the cloud
EXEC sp_addlinkedserver   
     @server='[servername].database.windows.net',   -- specify the name of the linked server    
     @srvproduct=N'Azure SQL Db',
     @provider=N'SQLNCLI', 
     @datasrc='yourservername',             -- add here your server name   
     @catalog='FCS';
GO

--Set up login mapping
EXEC sp_addlinkedsrvlogin 
    @rmtsrvname = '[servername].database.windows.net',   
    @useself = 'FALSE', 
    @locallogin=NULL,
    @rmtuser = 'username',
    @rmtpassword = 'password'
GO

Это создает связанный сервер в моем окружении, однако он не подключается к указанному мной каталогу (FCS). По какой-то причине он подключается к дефолту. Есть ли что-то, что я делаю не так

Ответы [ 2 ]

0 голосов
/ 31 октября 2019

Вот простой пример, объясняющий, как подключиться к базе данных SQL Azure с помощью распределенных запросов:

-- Configure the linked server  
-- Add one Azure SQL DB as Linked Server  
EXEC sp_addlinkedserver  
  @server='myLinkedServer', -- here you can specify the name of the linked server  
  @srvproduct='',       
  @provider='sqlncli', -- using SQL Server Native Client  
  @datasrc='myServer.database.windows.net',   -- add here your server name  
  @location='',  
  @provstr='',  
  @catalog='myDatabase'  -- add here your database name as initial catalog (you cannot connect to the master database)  

-- Add credentials and options to this linked server  
EXEC sp_addlinkedsrvlogin  
  @rmtsrvname = 'myLinkedServer',  
  @useself = 'false',  
  @rmtuser = 'myLogin',             -- add here your login on Azure DB  
  @rmtpassword = 'myPassword' -- add here your password on Azure DB  

EXEC sp_serveroption 'myLinkedServer', 'rpc out', true;  

-- Now you can use the linked server to execute 4-part queries  
-- You can create a new table in the Azure DB  
EXEC ('CREATE TABLE t1tutut2(col1 int not null CONSTRAINT PK_col1 PRIMARY KEY CLUSTERED (col1) )') at myLinkedServer  
-- Insert data from your local SQL Server  
EXEC ('INSERT INTO t1tutut2 VALUES(1),(2),(3)') at myLinkedServer  

-- Query the data using 4-part names  
SELECT * FROM myLinkedServer.myDatabase.dbo.myTable

Пожалуйста, следуйте официальному примеру и протестируйте снова.

Ссылка: Добавитьбазы данных SQL Azure в качестве связанного сервера для использования с распределенными запросами в облачных и локальных базах данных

Надеюсь, это поможет.

0 голосов
/ 30 октября 2019

Вы используете @server так же, как и @datasrc. @Server - это просто имя вашего связанного сервера в экземпляре SQL Server (локально), а @datasrc должно быть именем вашего логического сервера базы данных SQL Azure.

enter image description here

Пожалуйста, прочитайте эту статью для полного примера того, как создать связанный сервер.

...