本文共 2718 字,大约阅读时间需要 9 分钟。
首先给大家说一下我们平时常说的Oracle Client和Install Client 的区别
1.Oracle Client 包含完整的客户端连接工具,他具有管理作用,如果我们想用到导入导出(exp/imp以及expdp/impdp)的功能,那我们基本上都是要安装这种客户端 2.Instant Client 是Oracle(R) 发布的轻量级数据库客户端,减少甚至只包含几个文件,您无需安装标准的客户端,就可以通过它来运行 OCI、OCCI、Pro*C、ODBC 和 JDBC 程序。 它适用于那些仅需要连接远程 oracle 数据库,本地不需要安装服务端的用户。例如Toad,PL/SQL/Lab128等Oracle连接工具,虽然依赖Oracle客户端环境,单Instant Client也可以满足要求。but......? but ....?
但是有的时候大家想通过sqlplus,以及使用exp/imp导入导出的功能,但又不想安装Oracle Client(虽然安装很简单,但是我很懒),那怎么办? 下面就通过一个测试案例来说明如何通过Instant Client 来实现我们的要求 1.首先我们要下载这3个包。这里以12.1.0.2 为测试环境 下载地址:https://www.oracle.com/technetwork/cn/database/features/instant-client/index-092699-zhs.html instantclient-basic-linux.x64-12.1.0.2.0.zip instantclient-sdk-linux.x64-12.1.0.2.0.zip instantclient-sqlplus-linux.x64-12.1.0.2.0.zip 2.然后解压 [root@yuhuashi u01]# unzip instantclient-basic-linux.x64-12.1.0.2.0.zip [root@yuhuashi u01]# unzip instantclient-sdk-linux.x64-12.1.0.2.0.zip [root@yuhuashi u01]# unzip instantclient-sqlplus-linux.x64-12.1.0.2.0.zip 解压后目录如下:3
3.创建数据库连接文件
在 instantclient_12_1 目录下创建 network/admin 目录,使用命令[root@yuhuashi instantclient_12_1]# mkdir network/admin/并在 admin 目录下创建 tnsnames.ora 文件,这里就不用多说了[root@yuhuashi admin]# pwd/u01/instantclient_12_1/network/admin[root@yuhuashi admin]# lltotal 4-rw-r--r-- 1 777 root 237 Nov 6 09:22 tnsnames.ora[root@yuhuashi admin]#
4.配置环境
这步骤很重要,一定要认真的检查
[root@yuhuashi u01]# vi ~/.bashrc 添加如下内容export ORACLE_HOME=/u01/instantclient_12_1export PATH=$ORACLE_HOME:$PATHexport TNS_ADMIN=$ORACLE_HOME/network/adminexport LD_LIBRARY_PATH=$ORACLE_HOME:$LD_LIBRARY_PATHexport NLS_LANG='AMERICAN_AMERICA.ZHS16GBK'别忘了使用下面命令使配置生效[root@yuhuashi ~]# source ~/.bashrc
5.测试
6.那下面配置如何使用exp/imp
最简单就是从一台安装oracle的机器上去拿下来
这里一开始为了测试顺利,也就找了对应的12.0.1.2 的exp/imp文件,具体操作如下:
exp/imp 是在$ORACLE_HOME/bin,具体如下$ORACLE_HOME/bin/exp$ORACLE_HOME/bin/imp将这2个文件放到你安装的客户端路径下,我这里是/u01/instantclient_12_1[root@yuhuashi instantclient_12_1]# pwd/u01/instantclient_12_1[root@yuhuashi instantclient_12_1]# ll exp imp -rwxrwxrwx 1 root root 1037699 Nov 6 05:16 exp-rwxrwxrwx 1 root root 502547 Nov 6 05:16 imp[root@yuhuashi instantclient_12_1]# 记住下面的操作也是必须的创建目录$ORACLE_HOME/rdbms/mesg/那我这里就是[root@yuhuashi mesg]# pwd/u01/instantclient_12_1/rdbms/mesg然后将$ORACLE_HOME/rdbms/mesg/expus.msb$ORACLE_HOME/rdbms/mesg/impus.msb这个2个文件放到/u01/instantclient_12_1/rdbms/mesg下面去[root@yuhuashi mesg]# pwd/u01/instantclient_12_1/rdbms/mesg[root@yuhuashi mesg]# ll expus.msb impus.msb -rw-rw-r-- 1 root root 17408 Nov 6 06:19 expus.msb-rw-rw-r-- 1 root root 16384 Nov 6 06:19 impus.msb配置到此结束!!
那我们下面就测试一下exp/imp的功能了
一切OK!
小记:
刚才说了,我们刚才的exp/imp文件是从版本号相同的机器上拿下来的,那我们能不能使用11G的这个文件呢,
我这里又测试了一下,使用11.2.0.4 这个版本的exp/imp 放到对应的路径下,这里就略过,直接测试结果:
测试结果是No,但如果是用比他高的版本的exp/imp 能不能行呢,这里我就不测试了 !
转载地址:http://jzhji.baihongyu.com/