前几天遇到的ODBC API问题,虽然有手册,还是想了解别人是怎么做的,安装体验吧。
1、Oracle
能下载到,但是不安装它自己的客户端好像没法单独用,ldd也证实这一点。
Windows版里边竟然只有dll,必须配合安装后的客户端才行。
Oracle客户端安装繁琐但是不难,难的是装完以后你没法干净卸载,滚开吧!
2、SQL Server
首先,ODBC对旧版本的支持很差,如果测试数据库很旧,先去搞数据库吧。
而微软一般不保留express旧版本下载,新版本(2017)又需要新OS(至少我已经知道Windows7 没法装)
折腾到最后,我决定装一个Linux版 SQL Server 2017。
不管哪个edition,在启用时都要求2000M内存,至少提示是这么说的,但实际上我的虚拟机是2G。
Choose an edition of SQL Server:
1) Evaluation (free, no production use rights, 180-day limit)
2) Developer (free, no production use rights)
3) Express (free)
。。。
sqlservr: This program requires a machine with at least 2000 megabytes of memory.
Initial setup of Microsoft SQL Server failed. Please consult the ERRORLOG
内存改成4G
Setup has completed successfully. SQL Server is now starting.
Linux只能下载安装手册
按照这个手册前边是没有问题的,至少yum安装之前正常,手册是这样写的:
yum install msodbcsql-13.0.1.0-1 mssql-tools
mssql-tools 依赖 unixODBC
msodbcsql-13.0.1.0-1 依赖 unixODBC-utf16
Error: unixODBC-utf16 conflicts with unixODBC-2.3.1-11.el7.x86_64
Error: msodbcsql17 conflicts with unixODBC-utf16-2.3.1-1.x86_64
无论如何也没法安装,除非加参数强制,这样天知道能不能正常用。
折腾许久之后才想起,yum list msodbcsql*,还有一个更新的版本17!
yum install msodbcsql mssql-tools
Installing:
msodbcsql
mssql-tools
Installing for dependencies:
msodbcsql17
unixODBC
标题上的 Linux和macOS 去哪里啦?
还是没搞懂依赖关系,总算能用了:
SQL> select 1
+------------+
| |
+------------+
| 1 |
+------------+
SQLRowCount returns 0
1 rows fetched
目的达到。