Linux安装ODBC连接SQLServer数据库
操作系统: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数据库的更多相关文章
- Linux C语言连接 sqlserver数据库
记录一下Linux下使用C语言连接sqlserver的方法. 连接前需要安装freetds. 参考: http://www.cnblogs.com/helloworldtoyou/p/6910075. ...
- Linux下通过ODBC连接sqlserver
Linux下通过ODBC连接sqlserver 1.需求: 最近有个需求就是要在linux下连接(可以执行sql语句)sqlserver 2.环境 操作系统: Centos6.5 数据库: ...
- 字符串格式连接sqlserver数据库的字段概念解释
以连接sqlserver数据库举例说明如:“Provider=SQLOLEDB.1;Password=******;Persist Security Info=True;User ID=sa;Init ...
- 使用thinkphp连接sqlserver数据库时提示“系统不支持:sqlsrv”
习惯了使用php跟mysql组合,现在接到项目需要调用客户线下的系统软件的数据,具了解,这个软件的数据库是用sqlserver数据库也就是常说的mssql数据库了. 那么我现在需要用PHP连接sqls ...
- asp.net 连接sqlserver数据库
在asp.net中连接sqlserver数据库之前,首先得确保正常安装了sqlserver2008,同时有数据库. 在项目中添加一个类DB,用来专门负责执行对数据库的增删改查.在添加的过程中会弹出下面 ...
- Jmeter连接SqlServer数据库进行压力测试
Jmeter连接SqlServer数据库进行压力测试 前提准备:先安装jdbc驱动 驱动下载链接地址:http://pan.baidu.com/s/1bpDpjSr 密码:v6tn 下载解压之后,讲s ...
- 解决ODBC连接Oracle数据库报Unable to connect SQLState=08004问题
今天用ODBC连接Oracle数据库时,报了这么一个错“Unable to connect SQLState=08004 Oracle ODBC Ora-12154”,上网查了好久都说PowerDes ...
- python连接sqlserver数据库
1.准备工作 python3.6连接sqlserver数据库需要引入pymssql模块 pymssql官方:https://pypi.org/project/pymssql/ 没有安装的话需要: pi ...
- php支持连接sqlserver数据库
php支持连接sqlserver数据库 1.软件配置 Win7 64 +wampserver2.2d-x32+SQL Server 2008 R2数据库,wamp2.2中的php版本是5.3.10. ...
- python学习--python 连接SQLServer数据库(两种方法)
1. python 学习.安装教程参照: http://www.runoob.com/python/python-tutorial.html 2. 集成开发环境 JetBrains PyCharm C ...
随机推荐
- redis相关入门知识
redis介绍:是一种基于键值对的NoSql数据库,与许多键值对数据库不同是,它可以由string,hash,list,set,zest(有序集合).Bitmaps(位图).HyperLogLog.G ...
- linux查找服务位置
- docker之安装tomcat
国内Image仓库地址:https://hub.docker.com/search?q=tomcat 安装tomcat docker pull tomcat 查看Image docker images ...
- Qt多线程编程之QThread
背景引言[ GUI主线程 +子线程] 跟C++11中很像的是,Qt中使用QThread来管理线程,一个QThread对象管理一个线程,在使用上有很多跟C++11中相似的地方,但更多的是Qt中独有的内容 ...
- 解决sqlplus中方向键和退格键乱码问题
centos7 1.安装rlwrap软件包 yum install rlwrap -y 2.编辑环境变量 su - oracle vim ~/.bash_profile alias sqlplus=' ...
- C# 在GridView里面使用a标签下载文件(图片)
不能使用ajax进行下载文件的操作,具体原因需百度 前端页面,在GridView里面使用模板列,模板列放a标签 <cimesui:cimesGridView ID="GridView1 ...
- vue 使用 swiper vue-awesome-swiper
文档地址 https://github.com/surmon-china/vue-awesome-swiper 演示地址 https://v1.github.surmon.me/vue-awesome ...
- centos7 添加自定义程序为系统服务
centos6版本的系统服务是/etc/init.d启动脚本的方式,centos7采用强大的systemctl来管理系统服务,大幅提供了系统服务的运行效率,但是服务的配置和以前版本完全不同,这是很大的 ...
- 面试题-react
对react的理解 是什么 React 是一个用于构建用户界面的 JavaScript 库. 能干什么 可以通过组件化的方式构建大型的,快速响应的大型web应用 如何做 声明式 React 使用jsx ...
- 原创:USB HID读卡器数据解析(R321-13.56MHZ读卡器)
1.工具准备 USB 监视软件:Device Monitoring Studio7.25 PC端软件:单片机多功能调试助手 2.发送数据包 接收数据包 3.数据分析 usb hid(pc软件)发送帧( ...