sql loader 导入数据时的问题

在使用oracle sql loader 工具导入数据时遇到的问题,具体的shell脚本如下:

#!/bin/bash


 export LANG=zh_CN.GBK
 export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
 export ORACLE_BASE=/u01/oracle
 export ORACLE_HOME=/u01/oracle


 export PATH="$PATH:$ORACLE_BASE:$ORACLE_HOME:$ORACLE_SID:

$ORACLE_HOME/bin"


 SQLLDR="/u01/oracle/bin/sqlldr"
 ORACLE_USER="username"
 ORACLE_PWD="password"
 ORACLE_SID="orcl"


 CTL_FILE="/home/***/test/test.ctl"
 DATA_FILE="/home/***/test/test.txt"
 LOG_FILE="/home/***/test/test.log"
 BAD_FILE="/home/***/test/test.bad"


 "$SQLLDR" "$ORACLE_USER"/"$ORACLE_PWD"@"$ORACLE_SID" 

control="$CTL_FILE"  data="$DATA_FILE" direct=true BAD="$BAD_FILE" 

log="$LOG_FILE"  2>&1

 

问题一:

SQL*Loader-704: Internal error: ulconnect: OCIServerAttach [0]

ORA-12532: TNS:invalid argument

原因:数据库sid路径问题

解决方法:将Oracle的sid配置为localhost:端口号/sid名称 ,必须明确指明数据库的地址和端口号

问题二:

ORA-12705: Cannot access NLS data files or invalid environment specified  

原因:NLS_LANG配置不正确,可能是NLS_LANG不存在或者书写错误,由于本人在

NLS_LANG=AMERICAN_AMERICA.ZHS16GBK中将AMERICAN_AMERICA.ZHS16GBK

写成AMERICAN_AMERICAN.ZHS16GBK,才报以上错误

你可能感兴趣的:(sql loader 导入数据时的问题)