• Linux 安装 Oracle 客户端、 sqlldr 和 sqluldr2


      前阵子 hive 接口机故障导致重装了系统,原先所有的配置信息焕然一新,主机系统装好后,发现和 数据库的连接失败了,也无法通过 sqluldr sqluldr2 和 Oracle 进行文件交互了,今天的任务就是 把这个环境整好,辛苦一天也算是完成任务,作为新手,记录一下,方便以后使用;

    1、安装 Oracle 客户端

    首先:查询 Oracle 版本:

    SELECT * FROM V$VERSION;
    

      

    得到数据库版本后,去 Oracle 下载oracle 客户端 安装软件:

    https://www.oracle.com/database/technologies/instant-client/linux-x86-64-downloads.html

    需要下载对应的 版本

    上传压缩文件到自定目录:

    /app/oracle;依次解压 

    instantclient-basic-linux.x64-11.2.0.4.0.zip

    instantclient-sqlplus-linux.x64-11.2.0.4.0.zip

    instantclient-sdk-linux.x64-11.2.0.4.0.zip

    解压文件会自动放在这个 instantclient_11_2 路径下;

    (也可下载指定的 rpm 包进行安装)

    在 /app/oracle/instantclient_11_2/network/admin 下创建 tnsnames.ora 

    并编写配置信息

    下面是重点:配置环境变量

    如果不想将环境配置写在/etc/profile中配置内,也可以写在 .bash_profile中 

    export ORACLE_HOME=~/app/oracle/instantclient_11_2
    export PATH=$ORACLE_HOME:$PATH
    export ORACLE_SID=oracl111
    export TNS_ADMIN=$ORACLE_HOME/network/admin
    export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
    export NLS_DATE_FORMAT="yyyy-mm-dd hh24:mi:ss"
    export LD_LIBRARY_PATH=$ORACLE_HOME
    

    ORACLE_HOME是你自己的安装地址,NLS_LANG是显示的字符编码集格式。 

     至此 客户端配置完成,执行sqlplus 时尽量给 sqlplus 赋权限;

    2、安装 sqlldr sqluldr2 

     sqlldr 安装  客户端安装路径下创建 路径  rdbmsmesg

    将 ulus.msb 上传至 /app/oracle/instantclient_11_2/rdbms/mesg/ 下

    执行 sqluldr   验证安装成功

    (ulus.msb 可以从生产 Oracle 环境下拉取)

     sqluldr2 安装;

    上传 sqluldr2_linux64_10204.bin 到 客户端安装目录,重命名  sqluldr2

    执行 可执行程序 发现有问题:

    发现当前环境有libclntsh.so.11.1,与sqluldr2 所需包差小版本号,尝试建立软连接文件

    ln -s  libclntsh.so.11.1 libclntsh.so.10.1

    再次执行发现正常了;

     

  • 相关阅读:
    全排列(求所有情况的个数)--10--全排列--蓝桥杯凑算式和leetcode46全排列
    DFS+BFS(广度优先搜索弥补深度优先搜索遍历漏洞求合格条件总数)--09--DFS+BFS--蓝桥杯剪邮票
    Powermock2.0.0 详细 总结
    Springboot 前后端数据传输 常见误区
    idea src下源文件和class编译文件不一致
    java对象clone
    数据结构-链表
    队列
    稀疏数组
    数据库隔离级别
  • 原文地址:https://www.cnblogs.com/wdh01/p/13733012.html
Copyright © 2020-2023  润新知