专栏首页数据库新发现Linux上配置Unix ODBC连接Oracle数据库

Linux上配置Unix ODBC连接Oracle数据库

Linux上配置Unix ODBC连接Oracle数据库

作者:eygle

出处:http://blog.eygle.com

日期:January 05, 2005


Oracle10g前,Oracle并不提供UNIX/Linux下的ODBC驱动,用的最为广泛的是UnixOdbc,UnixOdbc的配置不算复杂,但是如果不顺利的话也会遇到一些问题。

今天成功安装配置了UnixOdbc把步骤总结一下供参考。 UnixOdbc可以在官方站点上下载。

以下是测试及配置步骤:

首先你需要安装Oracle客户端,并且确认网络可达。

1.使用isql进行测试

[root@magic root]# isql ********************************************** * unixODBC - isql * ********************************************** * Syntax * * * * isql DSN [UID [PWD]] [options] * * * * Options * * * * -b batch.(no prompting etc) * * -dx delimit columns with x * * -x0xXX delimit columns with XX, where * * x is in hex, ie 0x09 is tab * * -w wrap results in an HTML table * * -c column names on first row. * * (only used when -d) * * -mn limit column display width to n * * -v verbose. * * -lx set locale to x * * --version version * * * * Notes * * * * isql supports redirection and piping * * for batch processing. * * * * Examples * * * * cat My.sql | isql WebDB MyID MyPWD -w * * * * Each line in My.sql must contain * * exactly 1 SQL command except for the * * last line which must be blank. * * * * Please visit; * * * * http://www.unixodbc.org * * pharvey@codebydesign.com * * nick@easysoft.com * **********************************************

[root@magic root]# isql --versio unixODBC 2.2.10 [root@magic root]# which isql /usr/bin/isql

2./etc/odbc.ini文件配置

[ODBC Data Sources] test = Oracle ODBC Driver DSN

[default] Driver = /usr/local/easysoft/oracle/libesoracle.so

[test] Driver = /usr/local/easysoft/oracle/libesoracle.so

Description = Oracle server = 172.16.1.21 ServerType = Oracle Port = 1521 User = username Password = password Database = ava SID = ava METADATA_ID = 0 ENABLE_USER_CATALOG = 1 ENABLE_SYNONYMS = 1

[default] Driver = /usr/local/easysoft/oracle/libesoracle.so

3. /etc/odbcinst.ini 文件配置

; ; odbcinst.ini ;

[test] Description=ODBC for ORACLE Driver = /usr/local/easysoft/oracle/libesoracle.so

[ODBC] Trace=1 Debug=1 Pooling=No

4.sqlnet.ora文件配置

NAMES.DIRECTORY_PATH= (TNSNAMES, ONAMES, HOSTNAME)

5.tnsnames.ora文件配置

ava = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 172.16.18.21)(PORT = 1521)) ) (CONNECT_DATA = (SID = ava) ) )

6.测试

[root@magic admin]# isql test -v +---------------------------------------+ | Connected! | | | | sql-statement | | help [tablename] | | quit | | | +---------------------------------------+ SQL>

7.启动LDAP

[root@magic admin]# /usr/local/libexec/slapd -d 5 -f /home/eygle/openldap/slapd.conf @(#) $OpenLDAP: slapd 2.2.17 (Dec 29 2004 20:45:12) $ root@magic.hawa.cn:/home/eygle/openldap/openldap-2.2.17/servers/slapd daemon_init: daemon_init: listen on ldap:/// daemon_init: 1 listeners to open... ldap_url_parse_ext(ldap:///) daemon: IPv6 socket() failed errno=97 (Address family not supported by protocol) daemon: initialized ldap:/// daemon_init: 2 listeners opened slapd init: initiated server. ==>backsql_initialize() <==backsql_initialize() >>> dnNormalize: => ldap_bv2dn(cn=Subschema,0) ldap_err2string <= ldap_bv2dn(cn=Subschema)=0 Success => ldap_dn2bv(272) ldap_err2string .... ==>backsql_open_db_conn() backsql_open_db_conn(): connected, adding to tree <==backsql_open_db_conn() backsql_get_db_conn(): first call -- reading schema map ==>backsql_load_schema_map() ldapinfo.dn_ru field exists in the schema backsql_load_schema_map(): at_query "SELECT name,sel_expr,from_tbls,join_where,add_proc,delete_proc,param_order, expect_return,sel_expr_u FROM ldap_attr_mappings WHERE oc_map_id=?" <==backsql_load_schema_map() <==backsql_get_db_conn() ==>backsql_free_db_conn() backsql_free_db_conn(): closing db connection ==>backsql_close_db_conn() <==backsql_close_db_conn() <==backsql_free_db_conn() <==backsql_db_open(): test succeeded, schema map loaded slapd starting

启动成功.

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 高级复制中如何应对主体站点故障

    « 在高级复制中如何切换主体定义站点 | Blog首页 | 自己动手,丰衣足食 »

    数据和云01
  • 使用 db_file_multiblock_read_count测试Oracle在不同系统中的IO能力

    http://www.eygle.com/faq/db_file_multiblock_read_count&OracleIO.htm

    数据和云01
  • 自治数据库:体验 Oracle 的自治数据仓库云环境,ADWC 极致的性能优化

    原文链接:http://www.enmotech.com/web/detail/1/535/1.html

    数据和云01
  • 众里寻她千百度,蓦然回首,那bug却在灯火阑珊处

    今天发现consul上的A服务处于failed状态,幸运的是服务部署了两份,以预防单点故障,做负载均衡,连忙查看http://ip:port/health输出,...

    java达人
  • 文章关键词密度多少合适

      导读:网站通过更新文章,完善网站内部链接,优化长尾关键词排名,提升网站用户体验。要想达到这些效果,除了保持文章的原创、价值,还需要重视文章的优化,做好文章关...

    深度网
  • 【科研猫】生存分析的正确姿势(1)视频+R代码分享

    生存分析很重要,如何高效地对两万多个基因批量做生存分析?今天,猎豹师兄带领大家,正确姿势做生存分析,快速锁定目标基因。

    用户6317549
  • LeetCode1013:将数组分成和相等的三个部分

    题目位置:https://leetcode-cn.com/problems/partition-array-into-three-parts-with-equa...

    编程三分钟
  • 南阳理工大学oj 题目15 括号匹配(二)

    括号匹配(二) 时间限制:1000 ms  |  内存限制:65535 KB 难度:6 描述给你一个字符串,里面只包含"(",")","[","]"四种符号,请...

    ShenduCC
  • 小程序Ticker倒计时最佳实践

    01 什么是ticker? tick本来的意思是钟表的滴答声。Ticker类为游戏开发提供了一个主要的定时类。它主要的目的就是把stage渲染的工作集中起来,...

    腾讯NEXT学位
  • 数据结构 | 每日一练(103)

    ——老子

    闫小林

扫码关注云+社区

领取腾讯云代金券