天知道嘿嘿 2022-05-12 14:52 采纳率: 25%
浏览 36
已结题

unixODBC连接oracle数据库

192.168.64.139 :安装了unixODBC
192.168.64.140:oracle服务端
怎么配置使139这台机器通过unixODBC连接到140这台oracle
第一次发悬赏,不知道够不够,不够的话加微信,我再追加

  • 写回答

2条回答 默认 最新

  • 歇歇 2022-05-12 21:24
    关注
    1. 下载最新版的unixodbc并安装。
    2. 下载
      oracle-instantclient11.2-basic-11.2.0.1.0-1.i386.rpm
      oracle-instantclient11.2-odbc-11.2.0.1.0-1.i386.rpm
      安装。
      将/usr/lib/oracle/11.2/client/lib/ 拷贝到/usr/lib/中

    执行ldconfig

    1. 编辑/etc/odbc.ini odbcinst.ini
      内容如:
      odbc.ini
      [MY_ORACLE]
      #odbcinst.ini中对应中括号中的名字
      driver = Oracle_test
      server = 192.168.64.140
      port = 1521
      #tns的名字
      ServerName = MY_ORACLE
      UserID = sa
      password = 123456

    odbcinst.ini
    [Oracle_test]
    Description = odbc for Oracle
    Driver = /usr/lib/libsqora.so.11.1
    Setup = /usr/lib/liboraodbcS.so
    FileUsage = 1

    #这个未知,但还是加上吧
    [ODBC]
    Trace=1
    Debug=1
    Pooling=No

    在/usr/lib/oracle/11.2/network/admin/(这个路径可以放到程序所在路径中)中增加文件tnsnames.ora
    内容:
    MY_ORACLE =
    (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.64.140)(PORT = 1521))
    (CONNECT_DATA =
    (SERVER = DEDICATED)
    (SERVICE_NAME = mydb)
    )
    )
    其中MY_ORACLE为odbc.ini的ServerName,SERVICE_NAME为数据库名字,HOST为数据库所在主机IP,PORT为数 据库所在主机port。

    在/etc/profile中增加:
    export TNS_ADMIN=/usr/lib/oracle/11.2/network/admin/(此处可以放到程序中设置环境变量的形式,会在后续封装 odbc的使用中说明)

    执行 . /etc/profile (注意前面的英文句号) 把环境变量注册。

    这时候如果数据库没问题,就可以连接上了
    执行 isql MY_ORACLE -v(-v表示会提示出错信息)

    应该会出现
    +---------------------------------------+
    | Connected! |
    | |
    | sql-statement |
    | help [tablename] |
    | quit |
    | |
    +---------------------------------------+
    SQL>

    恭喜你, ODBC设置成功

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 5月24日
  • 已采纳回答 5月16日
  • 修改了问题 5月12日
  • 赞助了问题酬金10元 5月12日
  • 展开全部

悬赏问题

  • ¥20 关于#stm32#的问题:需要指导自动酸碱滴定仪的原理图程序代码及仿真
  • ¥20 设计一款异域新娘的视频相亲软件需要哪些技术支持
  • ¥15 stata安慰剂检验作图但是真实值不出现在图上
  • ¥15 c程序不知道为什么得不到结果
  • ¥40 复杂的限制性的商函数处理
  • ¥15 程序不包含适用于入口点的静态Main方法
  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因