在azure sql数据库中创建链接服务器

时间:2017-09-08 07:27:09

标签: azure azure-sql-database linked-server

想在azure sql中创建链接服务器。我想使用链接服务器在sql azure中使用本地数据库视图。是否可能或有任何替代方式。欢迎提出所有建议。

3 个答案:

答案 0 :(得分:2)

是的,您可以在SQLAZURE中创建链接服务器...假设您有本地服务器A和天蓝色数据库说AZ_b ..您可以在本地内部实例上为azure创建链接服务器...

因为您想在创建链接服务器之后执行此操作I want to use local DB views in sql azure using linked server.,您需要从服务器A运行查询,这是您的本地onpremises服务器,这是链接服务器名称解析的唯一方法可能发生,你不能做其他方式

以下是步骤

-- Supporse your database on Azure is named 'Azure_Test_DB' 
EXEC sp_addlinkedserver   
@server='myLinkedAzureServer', -- specify the name of the linked server   
@srvproduct='',        
@provider='sqlncli', 
@datasrc='azure-test-db.database.windows.net',   -- add here your server name   
@location='',   
@provstr='',   
--------Change it by your need ------------------------------------------------------------------ 
@catalog='Azure_Test_DB'  -- specify the name of database on your Azure DB you want to link 
------------------------------------------------------------------------------------------------- 

-- Configure credentials for Azure linked server 
EXEC sp_addlinkedsrvlogin   
@rmtsrvname = 'myLinkedAzureServer',   
@useself = 'false',   
--------Change it by your need ------------------------------------------------------------------ 
@rmtuser = 'yourLoginName',   -- add here your login on Azure DB   
@rmtpassword = 'yourPassword' -- add here your password on Azure DB   
------------------------------------------------------------------------------------------------- 

-- Configure options for Azure linked server 
EXEC sp_serveroption 'myLinkedAzureServer', 'rpc out', true;   


-- Now you can query the data using 4-part names   
select * from myLinkedAzureServer.[Azure_Test_DB].[dbo].[Students]; 

创建链接服务器后,您可以连接到服务器A并可以在查询下运行

select * from 
myLinkedAzureServer.[Azure_Test_DB].[dbo].[Students] az
join
localdb.dbo.table1 tbl
on tbl.somecol=az.somecol

<强>参考文献:
https://gallery.technet.microsoft.com/scriptcenter/How-to-create-linked-cb98fa7d
https://www.mssqltips.com/sqlservertip/3630/connect-an-azure-sql-database-to-an-onpremises-sql-server/

以上步骤适用于大多数机器。如果它不起作用,您需要按照此处的步骤设置ODBC DSN ..

https://blogs.msdn.microsoft.com/sqlcat/2011/03/07/linked-servers-to-sql-azure/

答案 1 :(得分:0)

您无法在Azure SQL数据库中创建链接服务器。

Microsoft确实提供了一个新的Instance as a Service产品预览版,允许您执行跨数据库查询。它也可能允许链接的服务器。它还没有广泛使用。

现在,您可以使用Elastic Query设置非常相似的内容。这是我在上面写的blog post。但是,它与链接服务器不同。

答案 2 :(得分:0)

作为限制SQL Azure数据库上不可用的链接服务器的解决方法,您可以将对象从本地SQL Server数据库复制到SQL Azure,或使用SQL Data Sync在本地SQL Server和SQL之间同步数据Azure服务器。

希望这有帮助。