在AWS RDS Oracle中使用SQL Loader

0

【以下的问题经过翻译处理】 通常我会在EC2实例上键入sqlplus,以连接到AWS RDS Oracle,然后我会得到一个用户名提示,输入所有连接字符串并成功连接。 例如: [oracle @ ip-xx-xx-xx-xx eeop] $ sqlplus

SQL \ * Plus:Release 19.0.0.0.0-Production on Fri Jan 27 15:45:52 2023 Version 19.3.0.0.0

Copyright (c) 1982, 2019, Oracle. All rights reserved.

Enter user-name: Enter user-name:bhardwar/xxxxxxx@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=oxxxx-yxxxxxx.xxxxxxx.rds.amazonaws.com)(PORT=1521))))(CONNECT_DATA=(SERVICE_NAME=xxxx))) 上一次成功的登录时间:2023年1月27日星期五15:13:27-05:00

Connected to: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Version 19.17.0.0.0

当我使用sqlldr命令时,EC2实例会报错。 sqlldruser_id=bhardwar/xxxxxxx@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=xxxx-xxxx-xxxxx-xxxx.amazonaws.com)(PORT=1521))),control=/app/loaddata/eeop/load_ocom_data.ctl log=/app/loaddata/eeop/load_ocom_data.log

[oracle @ ip-xx-xx-xx-xx]$ sqlldruser_id=bhardwar/xxxxxxx@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=xxxx-xxxx-xxxxx-xxxx.amazonaws.com)(PORT=1521))),control=/app/loaddata/eeop/load_ocom_data.ctl log=/app/loaddata/eeop/load_ocom_data.log

-bash:syntax error near unexpected token `('

如何使用SQL LOADER将数据加载到AWS RDS Oracle数据库中?

谢谢

Rajan

profile picture
专家
已提问 1 年前75 查看次数
1 回答
0

【以下的回答经过翻译处理】 错误“-bash: syntax error near unexpected token `('”表明问题出在bash shell而不是sql loader。

我建议你尝试以下方法:

  • 使用易连接格式:@//host:port/SERVICE_NAME
  • 引用并转义连接字符串中的引号和括号:\"\(DESCRIPTION=\(ADDRESS_LIST=\(ADDRESS=\(PROTOCOL=TCP\)\(HOST=xxxx-xxxx-xxxxx-xxxx.amazonaws.com\)\(PORT=1521\)\)\)\(CONNECT_DATA=\(SERVICE_NAME=xxxx\)\)\) control=/app/loaddata\"
  • 使用易连接格式://host:port/SERVICE_NAME
  • 将用户ID放入一个parfile中(仍可能需要引号或转义)
profile picture
专家
已回答 1 年前

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。

回答问题的准则