from: http://webikon.com/cases/installing-oracle-sql-plus-client-on-ubuntu

Installing Oracle SQL*Plus client on Ubuntu 

Claudiu Cristea · 8/7/2014

Technologies: 

Problem

You need to connect with sqlplus command line tool to your Oracle database but there are no binaries packages available for Debian/Ubuntu.

Solution

Convert and install from Oracle Instantclient RPM files. If case, tune your installation to correctlly access the Oracle client libraries.

Download

You'll need at least three RPM files. Go to http://www.oracle.com/technetwork/database/features/instant-client/index... and, once you have accepted the "License Agreement", download "Basic", "SQL*Plus" and the "SDK" RPMs.

In my case (Ubuntu 14.04 LTS, Intel on 64-bit) my downloaded files were:

  • oracle-instantclient12.1-sqlplus-12.1.0.2.0-1.x86_64.rpm
  • oracle-instantclient12.1-basic-12.1.0.2.0-1.x86_64.rpm
  • oracle-instantclient12.1-basic-12.1.0.2.0-1.x86_64.rpm

Convert and Install

In order to convert from .rpm to .deb, you'll need alien:

$ sudo apt-get install alien

Now convert and install the packages in this order:

$ sudo alien -i oracle-instantclient12.1-sqlplus-12.1.0.2.0-1.x86_64.rpm

$ sudo alien -i oracle-instantclient12.1-basic-12.1.0.2.0-1.x86_64.rpm

$ sudo alien -i oracle-instantclient12.1-devel-12.1.0.2.0-1.x86_64.rpm

Test & Fix

Test your Oracle client. User either sqlplus either sqlplus64 depending on your platform:

$ sqlplus64 username/password@//dbhost:1521/SID

If sqlplus yields of a missing libaio.so.1 file, run:

$ sudo apt-get install libaio1

If you get the next message, then you need to instruct sqlplus to use the proper libray:

sqlplus64: error while loading shared libraries: libsqlplus.so: cannot open shared object file: No such file or directory

To do so, first find the location of Oracle libraries. The path should be something like /usr/lib/oracle/<version>/client(64)/lib/. In my case (Ubuntu 14.04 LTS, Intel on 64-bit), it was /usr/lib/oracle/12.1/client64/lib/.

Now, add this path to the system library list. Create and edit a new file:

$ sudo nano /etc/ld.so.conf.d/oracle.conf

Add inside the path:

/usr/lib/oracle/12.1/client64/lib/

Run now the dynamic linker run-time bindings utility:

$ sudo ldconfig

For other errors when trying to run sqlplus, please consult the Ubuntu help page.

Wait! History? Auto-completion?

The weird thing about SQL*Plus is that it doesn't provide history and auto-completion like the MySQL client does. Here comes rlwrap, the "readline wrapper" — a small utility that uses the GNU readline library to allow the editing of keyboard input for any command.

Installing rlwrap on Ubuntu is simple:

$ sudo apt-get install rlwrap

Now you can run SQL*PLus wrapped with rlwrap:

$ rlwrap sqlplus64 username/password@//dbhost:1521/SID

Now you have line commands history in sqlplus. Nice :)

But what about auto-completion? Well, that needs some more workingaround and is not in the scope of this post. But you can check this post and figure a way to add tab completion to SQL*Plus.

It's time to make you life easy by adding an alias to .bashrc. Just ad this line:

alias sp='rlwrap sqlplus64 username/password@//dbhost:1521/SID'

and now you can simply use:

$ sp

to connect to your database.

Enjoy!

Resources

ubuntu 安装oracle客户端的更多相关文章

  1. Debian/Ubuntu安装Oracle客户端TNS

    本文作为新手在Linux上部署Java程序的必经之路的Oracle客户端配置,请高手绕道. 确定服务器版本 首选确定你的Oracle服务器版本,以便下载相应的客户端.查看的sql如下: select ...

  2. 不安装oracle客户端,用plsql连接oracle

    常用的Oracle开发的工具有SQL Developer和PL/SQL Developer,个人感觉前者虽然跨平台性优于后者,但比较大(大于300M)占用资源,而且用户体验也一般,而后者相对就小很多( ...

  3. 《oracle每日一练》免安装Oracle客户端使用PL/SQL

    免安装Oracle客户端使用PL/SQL Oracle客户端挺招人烦的,部署连接它的应用通常需要先安装它的客户端,安装程序要求在目标机器上写注册表,假设你没有洁癖的话,你仍可能被下面的事情绊住:当你的 ...

  4. 代码生成器Kalman Studio2.2发布,完美支持Oracle,不需要安装Oracle客户端

    这次更新主要是增加对Oracle的支持,不需要安装Oracle客户端,下面的配置文件列出了Kalman Studio支持的几种数据库 <?xml version="1.0" ...

  5. 一个不安装Oracle客户端的方法------未经试验

    (一)不安装客户端的解决办法.第一种方法:1.在安装ORACLE服务器的机器上搜索下列文件,oci.dllocijdbc10.dllociw32.dllorannzsbb10.dlloraocci10 ...

  6. .net4.0中使用ODP.net访问Oracle数据库(无需安装oracle客户端部署方法)

    1.在没有安装oracle客户端的设备上也能访问服务器上的oracle (通俗的讲就是:开发的应用程序 和 oracle数据库服务器分别在两台电脑上)2.不需要配置TnsNames.Ora文件 开发环 ...

  7. 不安装oracle客户端也可以使用pl/sql developer

    通常情况下,用PL/SQL Developer连接Oracle是需要安装Oracle客户端软件的,这也就意味着你的硬盘将被占用大约1G-2G的空间,对于Windows操作系统来说,你还会多出一些开机自 ...

  8. .net远程连接oracle数据库不用安装oracle客户端

    asp.net远程连接oracle数据库不用安装oracle客户端的方法下面是asp.net连接远程Oracle数据库服务器步骤: 1.asp.net连接oracle服务器需要添加Sytem.Data ...

  9. .net远程连接oracle数据库不用安装oracle客户端的方法

    .net远程连接oracle数据库不用安装oracle客户端的方法步骤: 1.添加Sytem.Data.OracleClient命名空间. 2.连接时需要ConnectionString字符串,出现在 ...

随机推荐

  1. typescript接口的概念 以及属性类型接口

    /* 1.vscode配置自动编译 1.第一步 tsc --inti 生成tsconfig.json 改 "outDir": "./js", 2.第二步 任务 ...

  2. MySQL 删除重复数据实例

    如何删除重复数据 业务场景:删除评论表中对同一订单同一商品的重复评论,只保留最早的一条. 查看是否存在对于同一订单同一商品的重复评论. SELECT order_id,product_id,COUNT ...

  3. c#day05

    using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ccc ...

  4. Ribbon Workbench 与此流程相关的流程操作未激活

    问题描述:使用Ribbon Workbench 打开解决方案时报 :与此流程相关的流程操作未激活 解决方法 :ribbon 导航--系统定置--流程中心--流程--CustomiseRibbon -- ...

  5. C#存储过程中return参数

    //1 连接字符串 string connectionString = "server=127.0.0.1;integrated security=true;database=MSPetSh ...

  6. elasticsearch License 到期后更新步骤

    ELK下载安装后有一个月试用期,到期后需要更新License,且每个License有效期为 1 年,License过期前10天里相关log会一直出现,提醒用户更新,支持实时更新无需重启服务. 步骤: ...

  7. MySQL Developer

    1.The mysql Client Program 2.Data Types 3.Joins 4.Subqueries 5.Views 6.StoredRoutine . 1.Client/Serv ...

  8. angularjs,Jsonp跨域访问页面

    angularjs1.6.8版本跨域 <!DOCTYPE html> <html ng-app="test"> <head> <meta ...

  9. 打包django项目

    1.安装pip install pyinstaller2.在django项目目录下执行pyi-makespec -D manage.py # 生成manage.spec文件3.执行pyinstalle ...

  10. python协程的使用

    1.Python对协程的支持是通过generator(生成器 yield)实现的.协程执行过程中,在子程序内部可中断,然后转而执行别的子程序,在适当的时候再返回来接着执行. 2.调用生成器运行的过程中 ...