我正在配置ODBC.ini文件以从Debian服务器连接到远程数据库。我的背景主要是PHP和MySQL,所以建立一个ODBC对我来说是新的,我将不胜感激。我的理解是每个DSN都需要在ODBC.ini文件中配置,我已经掌握了这些信息。
;---------------------------------------------------------------------------
; IBM INFORMIX ODBC Sample File
;
; File: odbc.ini
;
;---------------------------------------------------------------------------
[ODBC Data Sources]
Infdrv1=IBM INFORMIX ODBC DRIVER
Infdrv2=IBM INFORMIX ODBC DRIVER
;
; Define ODBC Database Driver's Below - Driver Configuration Section
;
[Infdrv1]
Driver=/extra/informix/lib/cli/iclit09b.so
Description=IBM INFORMIX ODBC DRIVER
Database=stores_demo
LogonID=odbc
pwd=odbc
Servername=ids_server1
[Infdrv2]
Driver=/extra/informix/lib/cli/iclis09b.so
Description=IBM INFORMIX ODBC DRIVER
Database=stores_demo
LogonID=odbc
pwd=odbc
Servername=ids_server2
CursorBehavior=0
CLIENT_LOCALE=en_us.8859-1
DB_LOCALE=en_us.8859-1
TRANSLATIONDLL=/extra/informix/lib/esql/igo4a304.so
;
; UNICODE connection Section
;
[ODBC]
;uncomment the below line for UNICODE connection
;UNICODE=UCS-4
;
; Trace file Section
;
Trace=0
TraceFile=/tmp/odbctrace.out
InstallDir=/extra/informix
TRACEDLL=idmrs09a.so
但是,我想知道在客户端配置完成后是否有测试连接的实用程序或方法。关于如何在Windows上执行此操作似乎有相当多的信息,更不用说在Linux上了。任何帮助表示赞赏。
答案 0 :(得分:7)
之前 ,只是评论。如果您想使用PHP, exists a PDO访问Informix ... ,您可以找到有关如何安装/配置here,here或此处PHP and Informix on Debian - how to install/configure the PDO <的提示/ p>
我使用“isql”命令,我用unixODBC rpm获取它(我使用opensuse发行版)。
官方网站:http://www.unixodbc.org/
有一些解释如何使用它。
您可以在Informix手册中找到更新的信息:: http://pic.dhe.ibm.com/infocenter/informix/v121/topic/com.ibm.odbc.doc/ids_odbc_057.htm
要设置Informix访问权限,我只需:
export INFORMIXDIR=/opt/informix export INFORMIXSERVER=ifxtest export INFORMIXSQLHOSTS=$INFORMIXDIR/etc/sqlhosts export PATH=$INFORMIXDIR/bin:$PATH export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$INFORMIXDIR/lib:$INFORMIXDIR/lib/cli:$INFORMIXDIR/lib/esql:$INFORMIXDIR/lib/tools
isql <dns_name> <user> <passwd>
完成上述所有配置后,这是我的测试:
ifxdba1 cinacio@jdi:~
$ isql dba1 informix xxxxxx
+---------------------------------------+
| Connected! |
| |
| sql-statement |
| help [tablename] |
| quit |
| |
+---------------------------------------+
SQL> select first 1 * from systables;
+---------------------------------------------------------------------------------------------------------------------------------+---------------------------------+------------+------------+--------+-------+---------+-----------------------+-----------+------------+--------+----------+-----------------------+------------+------------+-------+---------------------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------+------------+------------+------------+--------------------------+------------+----------------+-----------+----------+
| tabname | owner | partnum | tabid | rowsize| ncols | nindexes| nrows | created | version | tabtype| locklevel| npused | fextsize | nextsize | flags | site | dbname | type_xid | am_id | pagesize | ustlowts | secpolicyid| protgranularity| statchange| statlevel|
+---------------------------------------------------------------------------------------------------------------------------------+---------------------------------+------------+------------+--------+-------+---------+-----------------------+-----------+------------+--------+----------+-----------------------+------------+------------+-------+---------------------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------+------------+------------+------------+--------------------------+------------+----------------+-----------+----------+
| systables | informix | 1048580 | 1 | 500 | 26 | 2 | 262 | 2013-06-05| 65539 | T | R | 21 | 16 | 16 | 0 | | | 0 | 0 | 2048 | 2013-06-05 21:28:50.00000| 0 | | | |
+---------------------------------------------------------------------------------------------------------------------------------+---------------------------------+------------+------------+--------+-------+---------+-----------------------+-----------+------------+--------+----------+-----------------------+------------+------------+-------+---------------------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------+------------+------------+------------+--------------------------+------------+----------------+-----------+----------+
SQLRowCount returns -1
1 rows fetched
SQL>
我在opensuse中安装了UnixODBC的信息...
cinacio@jdi:~
$ rpm -qi unixODBC
Name : unixODBC
Version : 2.2.12
Release : 219.1.1
Architecture: x86_64
Install Date: Tue 15 Oct 2013 08:18:36 AM BRT
Group : Productivity/Databases/Tools
Size : 1700974
License : GPL-2.0+ ; LGPL-2.1+
Signature : RSA/SHA256, Sat 26 Jan 2013 01:57:06 PM BRST, Key ID b88b2fd43dbdc284
Source RPM : unixODBC-2.2.12-219.1.1.src.rpm
Build Date : Sat 26 Jan 2013 01:56:38 PM BRST
Build Host : build22
Relocations : (not relocatable)
Packager : http://bugs.opensuse.org
Vendor : openSUSE
URL : http://www.unixodbc.org/
Summary : ODBC driver manager with some drivers included
Description :
UnixODBC aims to provide a complete ODBC solution for the Linux
platform. Further drivers can be found at http://www.unixodbc.org/.
Authors:
--------
Peter Harvey <pharvey@codebydesigns.com>
Nick Gorham <nick@easysoft.com>
Distribution: openSUSE 12.3