操作系统:Centos7.2

1、下载ODBC安装包

unixODBC-2.3.9.tar.gz

freetds-1.3.9.tar.gz

下载这两个压缩包的地址:
ftp://ftp.freetds.org/pub/freetds/stable/
ftp://ftp.unixodbc.org/pub/unixODBC/

2、安装步骤

第一步:上传两个安装包到服务器上
第二步:安装unixODBC,先安装这个,后安装freetds

注意:这里如果安装顺序不一致,就不会产生libtdsodbc.so驱动文件(非常重要)

2.1、操作系统先安装gcc:

yum install gcc 

2.2、安装odbc

tar -xvf unixODBC-2.3.9.tar.gz
cd unixODBC-2.3.9
./configure --prefix=/usr/local/unixODBC
make
make install

2.3、安装freetds

tar -xvf freetds-1.3.9.tar.gz
cd freetds-1.3.9
./configure --prefix=/usr/local/freetds --with-unixodbc=/usr/local/unixODBC/
make
make install

2.4、配置freetds驱动

配置文件目录:/usr/local/freetds/etc/freetds.conf,在文件末尾加上如下内容,tds version参照默认配置,默认是7.3,只要修改host和port为正常的SQLServer地址即可

[SQLServer]
host = serverip
port = 1433
tds version = 7.3

2.5、测试配置是否正确

/usr/local/freetds/bin/tsql -S SQLServer -U username来连接SQLServer(其中-S指定了已经配置好的 TDS服务名称,-U指定登录数据库的用户名),连接成功则证明驱动配置正确。如果连接出现错误,很可能是因为tds version设置的不正确,你可以尝试修改该值重新连接

/usr/local/freetds/bin/tsql -S SQLServer -U sa
Password:
locale is "zh_CN.UTF-8"
locale charset is "UTF-8"
using default charset "UTF-8"
1>

2.6、配置unixODBC

为unixodbc指明数据库驱动程序所在位置及连接数据库所需要的认证信息。按照实际情况修改下列配置信息中的具体值,在/usr/local/unixODBC/etc/odbcinst.ini中配置驱动程序

[FreeTDS]                                         #驱动名称
Description=FreeTDS Driver
Driver=/usr/local/freetds/lib/libtdsodbc.so #驱动位置

/usr/local/unixODBC/etc/odbc.ini中配置

[mssql]  #DSN名称
Description=sqlserver connection
Driver=FreeTDS #上面配置好的驱动名称
TDS_Version=7.3 #TDS驱动版本
TRACE=On    #是否输出日志信息
TraceFile=stderr #日志信息的位置
Server=serverip #数据库网络地址
Port=1433 #数据库端口
User=name #登录用户名
Password=pwd #密码
Database=db name #连接的数据库名称

2.7、测试是否能连接数据库

/usr/local/unixODBC/bin/isql mssql name pwd
+---------------------------------------+
| Connected! |
| |
| sql-statement |
| help [tablename] |
| quit |
| |
+---------------------------------------+
SQL> select * from sys.objects
+---------------------------------------------------------------------------------------------------------------------------------+------------+-------------+------------+-----------------+-----+-------------------------------------------------------------+------------------------+------------------------+--------------+-------------+--------------------+
| name | object_id | principal_id| schema_id | parent_object_id| type| type_desc | create_date | modify_date | is_ms_shipped| is_published| is_schema_published|

注意:由于在配置文件中咱们已经配置好连接数据库名称了,查询SQL的时候就不要带上数据库名称了,否则会报错。

2.8、shell脚本连接数据库

SQL="/usr/local/unixODBC/bin/isql mssql sa 123"
i_sql=" exec dbo.bulkinsert 10,20,'dbo.stu'; "
echo $i_sql
result=`echo $i_sql|$SQL`

方法二:

SQL="select * from Student"
EMPLOYEES=`isql mssql sa 123 <<EOF
$SQL
go
EOF

方法三:

echo "$SQL" > $TMP/sql.$$
EMPLOYEES=`isql mssql sa 123 -i $TMP/sql.$$`
rm $TMP/sql.$$

2.9、安装了SQLServer的机器上调用命令执行存储过程

osql.exe -S ip -U sa -P 123 -d WAI -Q "exec dbo.bulkinsert %start%,%end%,stu

Linux安装ODBC连接SQLServer数据库的更多相关文章

  1. Linux C语言连接 sqlserver数据库

    记录一下Linux下使用C语言连接sqlserver的方法. 连接前需要安装freetds. 参考: http://www.cnblogs.com/helloworldtoyou/p/6910075. ...

  2. Linux下通过ODBC连接sqlserver

    Linux下通过ODBC连接sqlserver 1.需求: 最近有个需求就是要在linux下连接(可以执行sql语句)sqlserver 2.环境 操作系统:  Centos6.5 数据库:     ...

  3. 字符串格式连接sqlserver数据库的字段概念解释

    以连接sqlserver数据库举例说明如:“Provider=SQLOLEDB.1;Password=******;Persist Security Info=True;User ID=sa;Init ...

  4. 使用thinkphp连接sqlserver数据库时提示“系统不支持:sqlsrv”

    习惯了使用php跟mysql组合,现在接到项目需要调用客户线下的系统软件的数据,具了解,这个软件的数据库是用sqlserver数据库也就是常说的mssql数据库了. 那么我现在需要用PHP连接sqls ...

  5. asp.net 连接sqlserver数据库

    在asp.net中连接sqlserver数据库之前,首先得确保正常安装了sqlserver2008,同时有数据库. 在项目中添加一个类DB,用来专门负责执行对数据库的增删改查.在添加的过程中会弹出下面 ...

  6. Jmeter连接SqlServer数据库进行压力测试

    Jmeter连接SqlServer数据库进行压力测试 前提准备:先安装jdbc驱动 驱动下载链接地址:http://pan.baidu.com/s/1bpDpjSr 密码:v6tn 下载解压之后,讲s ...

  7. 解决ODBC连接Oracle数据库报Unable to connect SQLState=08004问题

    今天用ODBC连接Oracle数据库时,报了这么一个错“Unable to connect SQLState=08004 Oracle ODBC Ora-12154”,上网查了好久都说PowerDes ...

  8. python连接sqlserver数据库

    1.准备工作 python3.6连接sqlserver数据库需要引入pymssql模块 pymssql官方:https://pypi.org/project/pymssql/ 没有安装的话需要: pi ...

  9. php支持连接sqlserver数据库

    php支持连接sqlserver数据库 1.软件配置 Win7 64 +wampserver2.2d-x32+SQL Server 2008 R2数据库,wamp2.2中的php版本是5.3.10. ...

  10. python学习--python 连接SQLServer数据库(两种方法)

    1. python 学习.安装教程参照: http://www.runoob.com/python/python-tutorial.html 2. 集成开发环境 JetBrains PyCharm C ...

随机推荐

  1. Vue中使用model属性

    model属性接收两个参数 类型:{ prop?: string, event?: string } prop 也就是调用该组件的父组件中使用v-model指令绑定的属性 event 对应的是修改pr ...

  2. java script--一些冷知识

    java script--一些冷知识 目录 java script--一些冷知识 布兰登·艾奇,JavaScript 创始人 java script logo json logo json node. ...

  3. 修改系统hosts文件访问github

    C:\Windows\System32\drivers\etc 199.232.69.194 github.global.ssl.fastly.net 140.82.114.4 github.com

  4. Windows支持多个远程连接

    1.点击 开始-->运行-->输入"gpedit.msc",进入本地组策略编辑器 2.点击 计算机配置-->管理模板-->Windows组件-->远程 ...

  5. fftw安装

    1. 下载fftw 2.tar -zxvf fftw.tar.gz 3. ./configure --prefix=path --enable-sse2 --enable-avx --enable-f ...

  6. java的集合以及数据结构

    一.集合 1.介绍 红色为接口 蓝色为实现类 2.三种遍历方式 迭代器 增强for lambda表达式 Integer[] arr = col.toArray(new Integer[col.size ...

  7. cv::inRange

    // 简单实现 cv::namedWindow("Example 2-3", cv::WINDOW_AUTOSIZE); cv::VideoCapture cap; cap.ope ...

  8. unity tex2Dlod in vert

    https://forum.unity.com/threads/how-to-sample-a-texture-in-vertex-shader.513816/   GreatWall said: ↑ ...

  9. 尝试在Ubuntu中安装Emacs遇到的问题

    出现具体问题 今日学习安装emacs在Ubuntu19.04当中 安装详见下方帖子: 链接: 如何在Ubuntu中安装Emacs. 安装遇到问题,即 sudo add-apt-repository p ...

  10. LeetCode 29. 两数相除 时间击败【100.00%】 内存击败【76.25%】

    不禁让我想起了计算机是怎样进行除法运算的,单独考虑溢出以及边界情况,单独考虑符号,其他过程和我们小学除法是一模一样的:左移除数(十进制就是扩大十倍,二进制扩大两倍),直到正好比被除数小,一边累加商(在 ...