一、下载oracle 11g sqlplus软件
linux 64位操作系统,oracle安装包地址
http://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html
oracle-instantclient11.2-sqlplus-11.2.0.3.0-1.x86_64.rpm
oracle-instantclient11.2-basic-11.2.0.4.0-1.x86_64.rpm
二、安装rpm包
进入rpm包所在目录下,执行如下命令:
rpm -ivh oracle-instantclient11.2-sqlplus-11.2.0.3.0-1.x86_64.rpm
rpm -ivh oracle-instantclient11.2-basic-11.2.0.4.0-1.x86_64.rpm
三、指定sqlplus运行所需要的库
由于是RPM包安装的,因此,oracle客户端默认所在的路径为/usr/lib/oracle/11.2/client64/lib/
在任意目录下运行命令:vi /etc/ld.so.conf
在最后加入:/usr/lib/oracle/11.2/client64/lib/
四、重启ldconfig
运行 ldconfig 命令,链接动态库。
五、配置oracle环境变量
在任意目录下执行命令:vi /etc/profile, 在文件的末尾加入
export ORACLE_HOME=/usr/lib/oracle/11.2/client64/
export LD_LIBRARY_PATH=:$ORACLE_HOME/lib:/usr/local/lib:$LD_LIBRARY_PATH:.
export TNS_ADMIN=$ORACLE_HOME
export PATH=$PATH:$ORACLE_HOME/bin:.
保存退出后,执行命令source /etc/profile,使修改的配置文件立刻生效。
六、配置连接tnsnames.ora
执行如下命令 cd $ORACLE_HOME,进入相应的目录下,然后执行命令 vi tnsnames.ora,并写入如下内容:
test =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = ip)(PORT = 1521))
)
(CONNECT_DATA =
(SID = test )
(SERVER=DEDICATED )
)
)
保存退出后,就可以使用 sqlplus 用户名/密码@test来进行sqlplus操作了。
七、配置imp和exp工具
首先,找到oracle服务端的安装路径(通常是在另一台服务器上),我的安装路径为:/u01/app/oracle/product/11.2.0/db_1
将对应的bin目录下的imp和exp文件拷贝到oracle客户端对应的bin目录下,我的oracle客户端安装目录为:/usr/lib/oracle/11.2/client64/
所以执行命令 cd /usr/lib/oracle/11.2/client64/bin 进入目录,然后执行远程拷贝命令如下:
scp root@192.168.1.203:/u01/app/oracle/product/11.2.0/db_1/bin/imp ./
scp root@192.168.1.203:/u01/app/oracle/product/11.2.0/db_1/bin/exp ./
两条命令都需要输入密码
(其中192.168.1.203为oracle服务器端的ip地址,/u01/app/oracle/product/11.2.0/db_1为oracle服务器端的安装目录)
拷贝完成之后,需要新建目录/usr/lib/oracle/11.2/client64/rdbms/mesg,进入该目录并执行如下拷贝命令:
scp root@192.168.1.203:/u01/app/oracle/product/11.2.0/db_1/rdbms/mesg/impus.msb ./
scp root@192.168.1.203:/u01/app/oracle/product/11.2.0/db_1/rdbms/mesg/expus.msb ./
两条命令都需要输入密码
至此,imp和exp工具就算配置完成了。
八、可能遇到的问题
imp和exp配置完成后,使用时可能发生类似的报错,报错信息如:exp: undefined symbol: sldext
这就需要执行以下操作:
进入oracle客户端安装目录下的lib目录,cd /usr/lib/oracle/11.2/client64/lib,执行远程拷贝操作,并覆盖同名文件:
scp root@192.168.1.203:/u01/app/oracle/product/11.2.0/db_1/lib/libclntsh.so.11.1 ./
该命令同样需要输入密码
执行完毕后,imp和exp命令就可以正常使用了,导出test_table表的内容到test.dmp文件,操作如下:
exp user/pass@test tables=test_table file=/home/test.dmp