linux(debian)系统django配远程连接sqlserver数据库
费了将近一天时间。最终解决,记下来留给须要的人
须要安装的:
python-odbc : https://github.com/mkleehammer/pyodbc下载后install
安装python-odbc的假设报找不到sql.h文件错误,须要apt-get install g++。
这块代码是用C++写的。须要编译器
django-pyodbc : https://pypi.python.org/pypi/django-pyodbc 下载后install
unixODBC:http://www.unixodbc.org/. linux下的odbc数据库源
安装:./configure & make & make install
或者 apt-get install unixODBC unixODBC-dev
FreeTDS:http://www.freetds.org/ linux下的sqlserver驱动程序
安装:./configure --prefix=/usr/local/freetds --with-tdsver=8.0 --enable-msdblib --with-gnu-ld --enable-shared --enable-static
make & make install
apt-get install freetds freetds-dev tdsodbc
配置:
1.配置FreeTDS
找到 freetds.conf以下增加:
[MYSQLSERVER]
host = sqlserver服务器IP
port = 1433
tds version = 8.0
client charset = UTF-8
把 tsql所在文件夹增加环境变量 如我的操作:vim /etc/profile 加一行PATH=$PATH:/usr/local/freetds/bin
再source /etc/profile 使其立即生效
測试FreeTDS是否成功安装:
tsql -C 看安装环境
tsql -S MYSQLSERVER -H sqlserver数据库IP -p 1433 -U 账号 -P password
成功会看到例如以下信息:
locale is "en_US.UTF-8"
locale charset is "UTF-8"
using default charset "UTF-8"
1>
这时输入sql命令測试一下吧:
use test_db
go
select * from test;
go
成功安装后再继续下一步吧
2.配置unixODBC
找到odbc.ini odbcinst.ini
我的在/etc/odbc.ini /etc/odbcinst.ini
vim /etc/odbcinst.ini增加
[FreeTDS]
Description = ODBC of FreeTDS for MS-SQLServer
Driver = /usr/local/freetds/lib/libtdsodbc.so
FileUsage = 1
vim /etc/odbc.ini增加
[odbc连接名]
Driver = FreeTDS
ServerName = MYSQLSERVER(FreeTDS里配的连接名)
Database = test_db(数据库名)
測试unixODBC是否安全配置成功:
isql -v odbc连接名 账号 password
成功后会出现例如以下信息:
+---------------------------------------+
| Connected! |
| |
| sql-statement |
| help [tablename] |
| quit |
| |
+---------------------------------------+
SQL>
写几个sql语句測试下吧,只是这次不用再use test_db了。由于已经配过数据库名称了
select * from test
也不用go了,呵呵
3.安装完python-odbc和django-pyodbc后,配置django的setting(安装不说了,比較简单)
'kids': {
'ENGINE': 'django_pyodbc',
'NAME': '数据库名', #这个不须要。只是django里有限制,必须有NAME项。这里不会生效,实际的在odbc.ini里写的
'USER': '账号',
'PASSWORD': 'password',
'HOST': '', #这个也不会生效,实际生效的是freetds.conf里配置的
'OPTIONS':{
'driver': 'FreeTDS',
'dsn':'odbc连接名', #ODBC DSN name defined in your odbc.ini,
}
over!
linux(debian)系统django配远程连接sqlserver数据库的更多相关文章
- Linux系统下实现远程连接MySQL数据库的方法教程
1.在服务器端开启远程访问首先进入mysql数据库,然后输入下面两个命令: grant all privileges on *.* to 'root'@'%' identified by 'passw ...
- 远程连接SqlServer 数据库时提示 "在与SQL Server 建立连接时出现与网络相关的或特定实例的错误" 解决方法
前言 由于在之前的职业生涯中, 无论是数据库还是开发环境, 都是前人弄好的,自己只管使用就好啦.并不知安装过程中会出现各种各样的错.最近接触服务器之后,开发环境以及配置各方面都是从头到脚开始安装到配置 ...
- linux服务器初步印象,远程连接mysql数据库,传输文件,启动/关闭tomcat命令
1.连接服务器数据库,以Navicat连接mysql为例 1.1 常规 新建连接,连接名,主机名或ip地址:127.0.0.1 端口:3306用户名:(服务器端)root密码:(服务器端)pwd 1. ...
- linux远程连接mysql数据库
在linux系统中,远程连接mysql数据库时不仅需要开启ip访问,还需要将防火墙中添加相应规则 在wdlinux中的[安全管理]菜单下选择[防火墙[iptables]]选项,增加端口为3306的规则 ...
- 远程连接Kali Linux使用PuTTY实现SSH远程连接
远程连接Kali Linux使用PuTTY实现SSH远程连接 本书主要以在Android设备上安装的Kali Linux操作系统为主,介绍基于Bash Shell渗透测试.由于在默认情况下,在Andr ...
- SQLServer 2005客户端远程连接sql2008 数据库服务器
SQL2005客户端远程连接sql2008 数据库服务器 by:授客 QQ:1033553122 准备工作: 客户端所在pc机配置: 配置数据源 控制面板-管理工具-ODBC数据源-系统DSN-添加- ...
- 使用thinkphp连接sqlserver数据库时提示“系统不支持:sqlsrv”
习惯了使用php跟mysql组合,现在接到项目需要调用客户线下的系统软件的数据,具了解,这个软件的数据库是用sqlserver数据库也就是常说的mssql数据库了. 那么我现在需要用PHP连接sqls ...
- 远程连接db2数据库
在db2数据库中,需要理解catalog(编目)这个概念,理解前先说下db2数据库的体系结构:由系统(节点)也就是主机,下面是实例,实例下面是数据库,然后是表空间,再是数据库对象.现在假设你有一个数据 ...
- 将.Net Core发布至Docker,并连接 Redis、上传文件到本机、连接sqlserver数据库
此片文章目标是将 .Net Core 发布到 Docker 上,并且连接到在 Docker上的 Redis .上传文件到本机文件夹和连接 sqlserver 数据库. 创建项目 创建项目就不用说了,我 ...
随机推荐
- Flex 转载
- spring三大框架整合
Spring概述 Spring介绍 Spring它是一个一站式的分层轻量级框架. Spring体系结构 1. core container a) beans与core ...
- Linux-swap分区
Linux内核为了提高读写效率与速度,会将文件在内存中进行缓存,这部分内存就是Cache Memory(缓存内存).即使你的程序运行结束后, Cache Memory也不会自动释放.这就会导致你在Li ...
- 03010_防止SQL注入
1.预处理对象 (1)使用PreparedStatement预处理对象时,建议每条sql语句所有的实际参数,都使用逗号分隔: String sql = "insert into sort(s ...
- HDOJ 5399 Too Simple
每个函数都必须是一个排列,经过连续的一段确定函数后数字不能少. 满足上面的条件的话,仅仅要有一个-1函数特别的排列一下就能够满足要求,剩下的能够任意填 没有-1的话特判 Too Simple Time ...
- SDUTOJ 2711 4-2 电子时钟中的运算符重载
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvUl9NaXNheWE=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA ...
- Android学习笔记进阶14之像素操作
在我们玩的游戏中我们会经常见到一些图像的特效,比如半透明等效果.要实现这种半透明效果其实并不难,需要我们懂得图像像素的操作. 不要怕,其实在Android中Bitmap为我们提供了操作像素的基本方法. ...
- 4.使用fastjson进行json字符串和List的转换
转自:https://blog.csdn.net/lipr86/article/details/80833952 使用fastjson进行自定义类的列表和字符串转换 1.环境 jdk1.8,fastj ...
- Day2平衡树笔记
线段树不支持的操作:删除,插入 常见的平衡树 treap 慢||好写 sbt(大小平衡的树) 非常快 比较好写 ||功能不全 rbt 红黑树 特别快 || 非常难写 以上操作支持插入删除O(Nlo ...
- 错误 make: Nothing to be done for 'default'
Makefile书写格式非常严格,all:<TAB缩进>make -C $(KDIR) M=$(PWD) $(EXTRA_CFLAGS) modulesdefault:<TAB缩进& ...