美文网首页我爱编程
Linux远程访问Oracle数据库

Linux远程访问Oracle数据库

作者: Bean_Do | 来源:发表于2018-02-09 17:17 被阅读0次

    通过oracle客户端工具,我们不仅可以在本机访问oracle数据库也可以在其他主机访问oracle数据库,本文以linux配置oracle instant client为例,记录如何远程访问oracle数据库。

    一、下载相关安装包

    登录到oracle官网找到Instant Client Downloads的页面(我是从download-database-instant client路径进去的),找到对应的linux下载页面,比如我是for Linux x86-64 (64-bit),然后会看到一系列的安装包:

    Instant client Package - Basic 运行OCI, OCCI, 和JDBC-OCI应用程序需要的所有文件. 
    Instant client Package - Basic Lite: 只包含英语错误信息, 只支持unicode, ascii, 西欧字符集. 
    Instant client Package - JDBC Supplement  为jdbc增加了xa, 国际化和RowSet操作.
    Instant Client Package - SQL *Plus 包含sqlplus和需要的库文件
    Instant client Package - SDK 使用Instant Client开发Oracle 应用程序需要的头文件及示例makefile
    Instant client package - ODBC 使用odbc时需要的库, 不是所有平台都有. linux平台包含.
    Instant Client Package - Tools  Data Pump, SQL*Loader
    Basic和Basic Lite两个中选择一个
    
    下载-以zip包安装客户端(可按需选择,版本请按需选择)
    instantclient-basic-linux.x64-12.2.0.1.0.zip
    instantclient-sqlplus-linux.x64-12.2.0.1.0.zip
    instantclient-sdk-linux.x64-12.2.0.1.0.zip
    instantclient-tools-linux.x64-12.2.0.1.0.zip
    以rpm方式安装客户端
    oracle-instantclient11.2-basic-11.2.0.4.0-1.x86_64.rpm
    oracle-instantclient11.2-devel-11.2.0.4.0-1.x86_64.rpm
    oracle-instantclient11.2-sqlplus-11.2.0.4.0-1.x86_64.rpm
    oracle-instantclient11.2-tools-11.2.0.4.0-1.x86_64.rpm
    

    二、解压并配置

    以zip方式安装
    在客户端服务器上解压
    以我的解压路径为例:/usr/lib
    unzip -nq instantclient-basic-linux.x64-12.2.0.1.0.zip -d /usr/lib/
    unzip -nq instantclient-sqlplus-linux.x64-12.2.0.1.0.zip -d /usr/lib/
    unzip -nq instantclient-sdk-linux.x64-12.2.0.1.0.zip -d /usr/lib/
    unzip -nq instantclient-tools-linux.x64-12.2.0.1.0.zip -d /usr/lib/
    解压后进入该目录
    cd /usr/lib/instantclient_12_2/client64
    创建文件夹用以配置tnsnames.ora
    mkdir -p network/admin
    vim network/admin/tnsnames.ora
    格式如下
    lcoracle[本地实例名] =
      (DESCRIPTION =
        (ADDRESS = (PROTOCOL = TCP)(HOST = xx.xx.xx.xx[远程数据库IP地址])(PORT = 1521[远程服务器端口号]))
        (CONNECT_DATA =
          (SERVER = DEDICATED)
          (SERVICE_NAME = dbname[远程数据库服务名])
        )
      )
    
    以rpm方式安装
    rpm -ivh oracle-instantclient11.2-basic-11.2.0.4.0-1.x86_64.rpm
    rpm -ivh oracle-instantclient11.2-devel-11.2.0.4.0-1.x86_64.rpm
    rpm -ivh oracle-instantclient11.2-sqlplus-11.2.0.4.0-1.x86_64.rpm
    rpm -ivh oracle-instantclient11.2-tools-11.2.0.4.0-1.x86_64.rpm
    安装后在/usr/lib/oracle/11.2/client64/目录下创建network目录及其中文件,同上讲述
    为避免以后使用出现意想不到的问题,添加两个软链接(注意自己的实际路径和文件)
    ln -s /usr/include/oracle/11.2/client64 /usr/include/oracle/11.2/client
    ln -s /usr/lib/oracle/11.2/client64 /usr/lib/oracle/11.2/client
    
    配置环境变量
    vim /etc/profile.d/oracle.sh
    内容如下
    (zip方式参考路径)
    export ORACLE_HOME=/usr/lib/instantclient_12_2/
    export TNS_ADMIN=$ORACLE_HOME/network/admin
    export LD_LIBRARY_PATH=$ORACLE_HOME
    (rpm方式参考路径)
    export ORACLE_HOME=/usr/lib/oracle/11.2/client64
    export LD_LIBRARY_PATH=$ORACLE_HOME/lib
    export TNS_ADMIN=$ORACLE_HOME/network/admin
    执行source /etc/profile.d/oracle.sh
    

    三、连接操作

    格式 sqlplus 用户名/密码@本地实例名 (as 身份)
    example:数据库管理员登录
    sqlplus sys/123456@lcoracle as sysdba
    example:普通用户登录
    sqlplus test/123456@lcoracle
    

    额外:在windows上使用plsql develop登录时,简单操作的话,就下载instantclient-basic-windows.x64-12.2.0.1.0.zip,解压,然后将解压目录配置到plsql,在首选项-连接oracle主目录名那里填写解压目录C:\Users\lazycat\Desktop\instantclient_11_2在oci库那里填写C:\Users\lazycat\Desktop\instantclient_11_2\oci.dll,保存,over。

    相关文章

      网友评论

        本文标题:Linux远程访问Oracle数据库

        本文链接:https://www.haomeiwen.com/subject/lixqtftx.html