不确定这是否可行,我有一个SQL Server 2012数据库,我需要将数据传输到特定IP /端口上的第三方应用程序。这可能吗。如果是这样,你如何'映射'到特定的IP /端口?试图避免编写中间件。提前谢谢。
答案 0 :(得分:0)
CREATE ENDPOINT MyEndpoint STATE = STARTED AS TCP (LISTENER_PORT = 50001, LISTENER_IP = ALL) FOR TSQL();
。如果要使用特定地址,则地址必须位于括号中,例如LISTENER_IP =(10.0.0.201)。请注意,默认情况下,在创建新的TCP / IP端点时,将撤消对公共角色的默认TCP / IP端点的访问。根据您要对用户端点执行的操作,有时候让SQL Server做直觉应该没有问题的工作非常棘手。因此,测试用户端点很有用。检查错误日志SQL Server正在侦听的IP和端口。还尝试连接到SQL Server并验证您的连接是否正在使用所需的端点。例如。 :
SELECT * FROM sys.endpoints WHERE endpoint_id = (
SELECT endpoint_id FROM sys.dm_exec_connections WHERE session_id = @@SPID;
);
EXEC sys.sp_readerrorlog 0, 1, 'listening'; -- Returns only 'listening' rows
我希望它有所帮助。