Linux 安装 Oracle 客户端、 sqlldr 和 sqluldr2
前阵子 hive 接口机故障导致重装了系统,原先所有的配置信息焕然一新,主机系统装好后,发现和 数据库的连接失败了,也无法通过 sqluldr sqluldr2 和 Oracle 进行文件交互了,今天的任务就是 把这个环境整好,辛苦一天也算是完成任务,作为新手,记录一下,方便以后使用;
1、安装 Oracle 客户端
首先:查询 Oracle 版本:
1 | 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中
1 2 3 4 5 6 7 | 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 安装 客户端安装路径下创建 路径 rdbms\mesg
将 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
再次执行发现正常了;
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· 一文读懂知识蒸馏
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下