设为首页 收藏本站
查看: 273|回复: 0

[经验分享] Linux上配置Unix ODBC连接Oracle数据库

[复制链接]

尚未签到

发表于 2016-3-17 09:43:50 | 显示全部楼层 |阅读模式
Linux上配置Unix ODBC连接Oracle数据库

作者:eygle


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


日期:January 05, 2005
  


  Oracle10g前,Oracle并不提供UNIX/Linux下的ODBC驱动,用的最为广泛的是UnixOdbc,UnixOdbc的配置不算复杂,但是如果不顺利的话也会遇到一些问题。
  今天成功安装配置了UnixOdbc把步骤总结一下供参考。
UnixOdbc可以在官方站点上下载。
  以下是测试及配置步骤:
  首先你需要安装Oracle客户端,并且确认网络可达。
  1.使用isql进行测试
  [iyunv@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 *
**********************************************
  [iyunv@magic root]# isql --versio
unixODBC 2.2.10
[iyunv@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.测试

[iyunv@magic admin]# isql test -v
+---------------------------------------+
| Connected!                            |
|                                       |
| sql-statement                         |
| help [tablename]                      |
| quit                                  |
|                                       |
+---------------------------------------+
SQL>
  
  
  7.启动LDAP




[iyunv@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: <null><br>
daemon_init: listen on ldap:///<br>
daemon_init: 1 listeners to open...<br>
ldap_url_parse_ext(ldap:///)<br>
daemon: IPv6 socket() failed errno=97 (Address family not supported by protocol)<br>
daemon: initialized ldap:///<br>
daemon_init: 2 listeners opened<br>
slapd init: initiated server.<br>
==&gt;backsql_initialize()<br>
&lt;==backsql_initialize()<br>
&gt;&gt;&gt; dnNormalize: <cn><br>
=&gt; ldap_bv2dn(cn=Subschema,0)<br>
ldap_err2string<br>
&lt;= ldap_bv2dn(cn=Subschema)=0 Success<br>
=&gt; ldap_dn2bv(272)<br>
ldap_err2string<br>
....<br>
==&gt;backsql_open_db_conn()<br>
backsql_open_db_conn(): connected, adding to tree<br>
&lt;==backsql_open_db_conn()<br>
backsql_get_db_conn(): first call -- reading schema map<br>
==&gt;backsql_load_schema_map()<br>
ldapinfo.dn_ru field exists in the schema<br>
backsql_load_schema_map(): at_query "SELECT name,sel_expr,from_tbls,join_where,add_proc,delete_proc,param_order,<br>
expect_return,sel_expr_u FROM ldap_attr_mappings WHERE oc_map_id=?"<br>
&lt;==backsql_load_schema_map()<br>
&lt;==backsql_get_db_conn()<br>
==&gt;backsql_free_db_conn()<br>
backsql_free_db_conn(): closing db connection<br>
==&gt;backsql_close_db_conn()<br>
&lt;==backsql_close_db_conn()<br>
&lt;==backsql_free_db_conn()<br>
&lt;==backsql_db_open(): test succeeded, schema map loaded<br>
slapd starting  <br></cn></null>
  
  启动成功.





<!--
google_ad_client = "pub-1012037994804294";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_channel ="";
//-->

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.iyunv.com/thread-191915-1-1.html 上篇帖子: linux c 多线程 生产者--消费者 下篇帖子: Python 信号(linux) 源代码放附件中
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表