sql - -bash : imp: command not found oracle

标签 sql linux oracle bash oracle11g

我有一台 centos Linux 计算机和一个安装在远程位置的服务器上的 oracle 服务器

我已经使用以下链接在我的 Linux centos 计算机上安装了 oracle 客户端:

How to install SQL * PLUS client in linux

可能会注意到,安装客户端时没有 /network/admin 目录,因此没有 tnsnames.ora 文件。现在我已经手动创建了目录并创建了 tnsnames.ora 文件。我能够连接到远程服务器。

现在,当我查看 bin 文件夹时,我只得到三个 exe

 adrci  genezi  sqlplus.

我找不到小鬼。

因此,当我尝试将转储文件从 centos 导入到 oracle 时,出现错误:

-bash: imp: command not found

我使用以下命令在 Oracle 服务器上导入转储:

imp 'rdsuser@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(Host=oracledbrds.cwuabchlhlu.us-east-2.rds.amazonaws.com)(Port=1521))(CONNECT_DAT                                                                                        A(SID=oracledb)))'

请帮忙

最佳答案

即时客户端不包含完整客户端中的许多工具,包括 imp/exp、其较新的数据泵等效项、SQL*Loader 等。See the instant client FAQ ,其中强调它主要用于与您自己的应用程序一起分发,但可以包括 SQL*Plus - 唯一提到的工具。

如果您需要使用导出/导入或任何其他工具,那么您将需要安装完整的客户端,或在服务器上运行它们;这可能是 AWS 的问题。 Amazon have an article on importing data into Oracle .

顺便说一句,您可以将 tnsnames.ora 文件放在任何位置,只要将 TNS_ADMIN 设置为指向该位置即可,但您无论如何都不会在 imp 命令中引用它 - 您正在指定所有连接数据。如果您知道服务名称,该名称可能与 SID 不同(您可以在服务器上运行 lsnrctl services 来查找正确的值),您可以使用“easy connect”语法:

sqlplus rdsuser@//oracledbrds.cwuabchlhlu.us-east-2.rds.amazonaws.com:1521/your_service_name

关于sql - -bash : imp: command not found oracle,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23534668/

相关文章:

sql - 确定 Oracle null == null

c - 如何在不加载其依赖项的情况下加载共享库?

linux - grep:小星号(*)什么时候应该匹配自身?

linux - 使用 nginx 提供 1GB 文件的最佳文件系统,在适度的写入、读取性能方面?

MySQL:-在单行中显示结果

java - Oracle 日志充满 "java.lang.Throwable: No Error"?

sql-server - 当操作涉及对任何列进行排序、聚合和过滤时,针对读取(低/无写入)进行了优化的内存数据库

sql - 如何获取每个主记录的最后 2 条详细信息?

mysql - 将 SQL Server 查询转换为 MySQL

java - 如何在准备好的语句中将字符连接到 SQL 字符串