天天看點

sqoop 常見錯誤以及處理方式

<b>oracle: connection reset errors</b>

錯誤代碼:

這個問題的産生原因是由于缺少一個生成随機數的裝置,找到 $java_home/jre/lib/security目錄下的java.security檔案,修改securerandom.source=file:/dev/../dev/urandom。

<b>oracle: case-sensitive catalog query errors</b>

下面是錯誤代碼:

解決方式:使用者名和表名全用大寫。

<b>oracle: ora-00933 error (sql command not properly ended)</b>

如果沒有指定的話,sqoop會預設使用oracle.jdbc.oracledriver

omit選項 --driver oracle.jdbc.driver.oracledriver 然後重新送出

<b>mysql: import of tinyint(1) from mysql behaves strangely</b>

jdbc會把tinyint(1)認為是java.sql.types.bit,然後sqoop就會轉為boolean了,悲劇吧

解決方法:在連接配接上加上一句話tinyint1isbit=false

<b>jdbc:mysql://localhost/test?tinyint1isbit=false</b>

另一種解決方式是:

hive使用 --map-column-hive foo=tinyint

非hive使用--map-column-java foo=integer