在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
EXPERTE
gefragt vor 8 Monaten64 Aufrufe
1 Antwort
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
EXPERTE
beantwortet vor 8 Monaten

Du bist nicht angemeldet. Anmelden um eine Antwort zu veröffentlichen.

Eine gute Antwort beantwortet die Frage klar, gibt konstruktives Feedback und fördert die berufliche Weiterentwicklung des Fragenstellers.

Richtlinien für die Beantwortung von Fragen