EXP-00056: ORACLE error 12154 encountered
使用如下命令:
/*
exp 用户名/密码@数据库实例名 file=导出文件名 [参数]
其中,参数可以是以下选项之一或多个:
tables=表名:指定要导出的表名,可以使用逗号分隔多个表名。
query=查询语句:指定要导出的查询结果。
constraints=y:导出约束条件。
indexes=y:导出索引。
grants=y:导出授权信息。
triggers=y:导出触发器。
full=y:导出整个数据库。
rows=n:指定要导出的行数,默认为所有行。
*/
exp scott/scott@orcl file=/expdat.dmp full=y
-- 正确方式
exp scott/scott@CONN_orcl file=/expdat.dmp full=y
出现了如下错误:
EXP-00056: ORACLE error 12154 encountered
ORA-12154: TNS:could not resolve the connect identifier specified
EXP-00000: Export terminated unsuccessfully
这个错误信息表示Oracle无法解析指定的连接标识符。这可能是由于TNSNAMES.ORA文件中的连接描述符配置错误或者网络问题导致的。你需要检查你的TNSNAMES.ORA文件和网络设置。
TNSNAMES.ORA 文件通常位于 Oracle 客户端软件的安装目录下的 network/admin 文件夹中。
cd $ORACLE_HOME/network/admin/
如果TNSNAMES.ORA文件不存在,您可以尝试手动创建该文件并配置相应的内容:
# 在TNSNAMES.ORA文件中,您需要定义一个或多个连接别名,每个别名对应一项数据库连接的详细信息。包括主机地址、端口号和服务名等,例如:
CONN_orcl = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 172.17.144.191)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = orcl) ) )
CONN_orcl
是连接别名,SERVICE_NAME
、HOST
和PORT
应替换为您自己的数据库服务名、主机地址和端口号。- 确保系统的环境变量正确设置。特别是
ORACLE_HOME
和TNS_ADMIN
,它们应该分别指向您的 Oracle 主目录和网络管理文件夹的路径。 - 与服务器端的关系:虽然 TNSNAMES.ORA 文件主要用于客户端配置,但它也与服务器端有关,尤其是在多台服务器之间有数据共享要求的情况下,每台服务器上都可能需要定义该文件。
- 与其他配置文件的关系:TNSNAMES.ORA 通常与 LISTENER.ORA(监听器配置文件)和 SQLNET.ORA(网络配置参数文件)一起使用,共同构成了 Oracle 数据库的网络连接框架。