A. 我用sqoop從oracle導入數據到hdfs時,總是報 表或視圖不存在錯誤,求解答...
通過配置本地資料庫的tns配置文件實現:
去oracle安裝目錄下oracle\proct\10.2.0\db_2\NETWORK\ADMIN\ 找到tnsnames.ora,用記事本打開,里邊有遠程資料庫的tns連接配置串如下
ORCL23 =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.3.23)(PORT = 1521))
)
(CONNECT_DATA =
(SID = ORCL)
)
)
添加好ip、埠和目標資料庫的實例名(SID),然後確保tns名稱(ORCL23)在整個文檔中唯一,保存後打開資料庫連接工具,輸入遠程資料庫上的用戶名密碼,選擇資料庫對象為你配置的連接名就可以了
B. sqoop問題,求幫助
這里所說的在Java中執行Hive命令或HiveQL並不是指Hive Client通過JDBC的方式連接HiveServer(or HiveServer2)執行查詢,而是簡單的在部署了HiveServer的伺服器上執行Hive命令。
C. 我在linux的hadoop1.2.1上安裝sqoop1.99.3,命令sqoop.sh server stop命令出錯。
腳本內容如下:
#!/bin/bash
#CURR_DATE=`date +"%Y-%m-%d %H:%M:%S"`------>不能使用
v_sql="insert into origin_ennenergy_energytrade.test2 values('"$(date +"%Y-%m-%d %H:%M:%S")"','"Y"')"
echo $v_sql
#insert into origin_ennenergy_energytrade.test2 values('2016-08-09 10:39:44','Y')
hive -e "$v_sql;"
sqoop export --connect jdbc:MySQL://ip:3306/test23?characterEncoding=utf8 --username root --password 123--table test2--export-dir /user/Hive/warehouse/origin_ennenergy_energytrade.db/test2/* --input-fields-terminated-by "\t" --update-mode allowinsert --update-key times;
D. 如何用sqoop將hive分區表信息導入到mysql命令
如何用sqoop將hive分區表信息導入到mysql命令
直接導入hive表
sqoop
import
--connect
jdbc:postgresql://ip/db_name--username
user_name
--table
table_name
--hive-import
-m
5
內部執行實際分三部,1.將數據導入hdfs(可在hdfs上找到相應目錄),2.創建hive表名相同的表,3,將hdfs上數據傳入hive表中
sqoop根據postgresql表創建hive表
sqoop
create-hive-table
--connect
jdbc:postgresql://ip/db_name
--username
user_name
--table
table_name
--hive-table
hive_table_name(
--hive-partition-key
partition_name若需要分區則加入分區名稱)
導入hive已經創建好的表中
sqoop
import
--connect
jdbc:postgresql://ip/db_name
--username
user_name
--table
table_name
--hive-import
-m
5
--hive-table
hive_table_name
(--hive-partition-key
partition_name
--hive-partition-value
partititon_value);
使用query導入hive表
sqoop
import
--connect
jdbc:postgresql://ip/db_name
--username
user_name
--query
"select
,*
from
retail_tb_order
where
\$CONDITIONS"
--hive-import
-m
5
--hive-table
hive_table_name
(--hive-partition-key
partition_name
--hive-partition-value
partititon_value);
注意:$CONDITIONS條件必須有,query子句若用雙引號,則$CONDITIONS需要使用\轉義,若使用單引號,則不需要轉義。
E. sqoop2報錯,哪位大神指點迷津。
list-databases
命令有誤,list與-databases之間不應該有空格!