SQL Anywhere与SQL Server的远程服务器连接

2020-08-20 09:02发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)我正在尝试将表从MS SQL S...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我正在尝试将表从MS SQL Server(在Windows上)链接到SQL Anywhere(在Linux上)

已安装SQL Server驱动程序: https://docs.microsoft.com/zh-CN/sql/connect/odbc/linux-mac/installing-the-microsoft- odbc-driver-for-sql-server?view = sql-server-ver15#ubuntu17

已经使用sqlcmd和isql测试了到SQL Server的连接,并且都可以正常连接。

在SQL Anywhere中,我使用以下查询创建了远程服务器:

  CREATE SERVER" lnkIS"类'MSSODBC'USING'host = xxx.xxx.xxx.xxx; port = nnnn; driver =/opt/microsoft/msodbcsql17/lib64/libmsodbcsql-17.5.so.2.1;  uid = wis; pwd = xxx; eng = WisData'; 

但是当我测试连接时,我得到了:

 连接失败。
 无法连接到服务器'lnkIS':[Sybase] [ODBC驱动程序管理器]无法加载驱动程序/opt/microsoft/msodbcsql17/lib64/libmsodbcsql-17.5.so.2.1[Sybase][ODBC驱动程序] [SQL Anywhere]无法连接至 服务器" lnkIS":[Sybase] [ODBC驱动程序管理器]无法加载驱动程序/opt/microsoft/msodbcsql17/lib64/libmsodbcsql-17.5.so.2.1
 的SQLCODE:-656
 SQLSTATE:HY000
 SQL语句:从dbo.sp_remote_tables('lnkIS',NULL,NULL,NULL,1)ORDERBY1 
中选择第一表名

除Sybase外,我没有找到任何有关如何使用驱动程序的示例。 谁能举例说明如何连接到MS SQL Server?

1条回答
浮生未央
2020-08-20 09:43

SQL Anywhere没有在非Windows平台上使用SQL Server ODBC的特定经验,也没有对SQL Server ODBC的测试。 尽管我们没有特定的经验,但是我们已经使用了如下环境,该环境能够成功地解决以下所述的连接问题,并使用了定义的DSN:

1。 配置unixODBC(这是MSS文档中讨论的推荐设置的一部分):

 export LD_PRELOAD =/lib64/libcrypto.so.1.0.0 
export ODBCINI =/etc/unixODBC/odbc.ini
export ODBCINST =/etc/unixODBC/odbcinst.ini

2。 创建以下符号链接(按照SAP注释1644499)-您可能需要确认环境的特定符号链接引用:

 ln -s/usr/lib64/libodbc.so.2.0.0/的usr/lib64/libodbc.so.1
 在-s/usr/lib64/libodbcinst.so.2.0.0/usr/lib64/libodbcinst.so.1

3。 如以下示例所示,添加驱动程序并通过修改odbc.ini和odbcinst.ini文件来创建DSN:

/etc/unixODBC/odbc.ini 
[]
Driver =用于SQL Server的ODBC驱动程序17
描述=
服务器=
端口= <端口>
数据库= <数据库> /etc/unixODBC/odbcinst.ini
[用于SQL Server的ODBC驱动程序17]
说明=用于SQL Server的Microsoft ODBC驱动程序17
Driver =/opt/microsoft/msodbcsql17/lib64/libmsodbcsql-17.2.so .0.1
UsageCount = 1

一周热门 更多>