Sp_addlinkedsrvlogin using the sp_addlinkedserver and remote access sqlserver database

1)sp_addlinkedserver

Description: Create a linked server, you can query a remote database through a linked server

grammar:

sp_addlinkedserver @ server = 'Alias ​​Server' - Custom

                             @srvproduct = '' - General Default fill in the blank: As SQL server

                             Provider = @ ' provider_name' - corresponding to this data source the OLE DB unique identifier for programming: As SQLNCLI

                             DATASRC = @ ' data_source' - data source access path: The 127.0.0.1,1433

                             @location = '' - generally fill in the blank,

                             @provstr = '' - unique identification of the data source OLE DB provider-specific connection string, generally fill in the blank

                             @catalog = '' - the data directory, generally written to access the database name

Sample code:

USE master
GO
--定义一个链接服务器
EXEC sp_addlinkedserver @server=N'MyLinkServer',--连接服务器别名自定义,代表定义的连接服务器
	@srvproduct=N'',---可以为空,默认为SQLserver
	--@provider=N'SQLNCLI',--注册oledb访问接口,SQLNCLI使用sqlserver2005以上
	@datasrc=N'58.148.63.172,1433',--数据源路径:此格式访问默认实例
	@provider=N'SQLOLEDB',--注册oledb访问接口,SQLOLEDB适用sqlserver2000
	--@datasrc=N'127.0.0.1';测试OK
	@catalog=N'SMSDB'--要访问的数据库(可选)
GO

--查看所有可用的服务器系统信息
exec sp_helpserver


--查看链接服务器配置信息
exec sp_linkedservers

 

2)sp_addlinkedsrvlogin

Description: create or update maps on a local instance of SQL Server logins and remote servers between security account, use sp_addlinkedsrvlogin to specify login credentials used to log on the local server linked server.

grammar:

sp_addlinkedsrvlogin @ rmtsrvname = 'rmtname' - link server alias

                               @ Useself = {true | false | null} - true representation windows login credentials, false representation sql account password, null means no secret account login

                               @ Locallogin = 'locallogin' - login on the local server, the default is empty

                               @rmtuser = '' - sql username

                               @rmtpassword = '' - sql password

Sample code:


--定义一个远程映射登陆名
EXEC sp_addlinkedsrvlogin @rmtsrvname=N'MyLinkServer',
	@useself=N'false',
	@locallogin=null,
	@rmtuser='sa',
	@rmtpassword='123456';

 

 

 

Synthesis: Use sp_addlinkedserver to create the linked server, and then sp_addlinkedsrvlogin increase user login link, complete remote access remote data code is as follows


USE master
GO
--定义一个链接服务器
EXEC sp_addlinkedserver @server=N'MyLinkServer',--连接服务器别名自定义,代表定义的连接服务器
	@srvproduct=N'',---可以为空,默认为SQLserver
	--@provider=N'SQLNCLI',--注册oledb访问接口,SQLNCLI使用sqlserver2005以上
	@datasrc=N'58.148.63.172,1433',--数据源路径:此格式访问默认实例
	@provider=N'SQLOLEDB',--注册oledb访问接口,SQLOLEDB适用sqlserver2000
	--@datasrc=N'127.0.0.1';测试OK
	@catalog=N'SMSDB'--要访问的数据库(可选)

GO


--定义一个远程映射登陆名
EXEC sp_addlinkedsrvlogin @rmtsrvname=N'MyLinkServer',
	@useself=N'false',
	@locallogin=null,
	@rmtuser='sa',--远程sql登陆名
	@rmtpassword='123456';远程sql登陆密码
GO


--通过链接服务器查询远程数据
SELECT TOP 10 * FROM MyLinkServer.SMSDB.dbo.USERACCOUNT ORDER BY Col001

search result:

 

- Query information available servers

EXEC sp_helpserver;

result:

 

- View linked server configuration information
exec sp_linkedservers;

 

- Remove the linked server logins

--sp_droplinkedsrvlogin

Description: The existing mapping between a login on the linked server to log on to delete the local server running SQL Server

Syntax: spdroplinkedsrvlogin @ rmtsrvname = 'servername' - a remote server alias link

                                        @ locallogin = 'locallogin' - login mapping to the linked server on the local server rmtsrvname

Example:

execute sp_droplinkedsrvlogin @rmtsrvname='MyLinkServer',--链接服务器名MyLinkServer
                              @locallogin=null

 

- Delete server

sp_dropserver

Description: List from the local SQL Server instance known remote servers and linked server to remove the server

grammar:

sp_dropserver [ @server = ] 'server'   --服务器名
     [ , [ @droplogins = ] { 'droplogins' | NULL} ]--默认为NULL

Example: Remove link server MyLinkServer

execute sp_dropserver @server='MyLinkServer',@droplogins='droplogins'

 

Guess you like

Origin blog.csdn.net/ilovetheworld/article/details/90693054