更新時(shí)間:2021-01-26 來源:黑馬程序員 瀏覽量:
Sqoop的安裝配置非常簡(jiǎn)單,前提是部署Sqoop工具的機(jī)器需要具備Java和Hadoop的運(yùn)行環(huán)境。接下來,本書將采用編寫時(shí)最新穩(wěn)定版本Sqoop-1.4.6來講解Sqoop的安裝配置,下載地址http://archive.apache.org/dist/sqoop/1.4.6/。
1**.Sqoop**安裝
首先將下載好的安裝包上傳至hadoop01主節(jié)點(diǎn)的/export/software目錄中,并解壓至/export/servers路徑下,然后對(duì)解壓包進(jìn)行重命名,具體指令如下。
$ tar -zxvf sqoop-1.4.6.bin__hadoop-2.0.4-alpha.tar.gz -C /export/servers/ $ mv sqoop-1.4.6.bin__hadoop-2.0.4-alpha/ sqoop-1.4.6
執(zhí)行完上述Sqoop的下載解壓后,就完成了Sqoop的安裝。
2**.Sqoop**配置
(1)先進(jìn)入Sqoop解壓包目錄中的conf文件夾目錄下,將sqoop-env-template.sh文件復(fù)制并重命名為sqoop-env.sh,對(duì)該文件中的如下內(nèi)容進(jìn)行修改。
export HADOOP_COMMON_HOME=/export/servers/hadoop-2.7.4 export HADOOP_MAPRED_HOME=/export/servers/hadoop-2.7.4 export HIVE_HOME=/export/servers/apache-hive-1.2.1-bin
在sqoop-env.sh配置文件中,需要配置的是Sqoop運(yùn)行時(shí)必備環(huán)境的安裝目錄,Sqoop運(yùn)行在Hadoop之上,因此必須指定Hadoop環(huán)境。另外,在配置文件中還要根據(jù)需要自定義配置Hbase、Hive和Zookeeper等環(huán)境變量(例如本章后續(xù)將會(huì)使用到Hive,所以必須配置Hive的環(huán)境變量,而其他無關(guān)環(huán)境變量如果未配置,使用過程中可能會(huì)出現(xiàn)警告提示,但不影響其他操作)。
小提示:
需要說明的是,本書講解的Hadoop是Apache社區(qū)版本,Hadoop重要的組件都是安裝在一個(gè)安裝包中,所以上述配置文件中配置的HADOOP_COMMON_HOME與HADOOP_MAPRED_HOME指定的Hadoop安裝目錄一致。如果使用第三方的Hadoop,這些組件都是可選擇配置的,那么這兩個(gè)路徑可能會(huì)有所不同。
(2)為了后續(xù)方便Sqoop使用和管理,可以配置Sqoop系統(tǒng)環(huán)境變量。使用“vi /etc/profile”指令進(jìn)入到profile文件,在文件底部進(jìn)一步添加如下內(nèi)容類配置Sqoop系統(tǒng)環(huán)境變量。
export SQOOP_HOME=/export/servers/sqoop-1.4.6 export PATH=$PATH:$SQOOP_HOME/bin:
配置完成后直接保存退出,接著使用“source /etc/profile”指令刷新配置文件即可。
(3)當(dāng)完成前面Sqoop的相關(guān)配置后,還需要根據(jù)所操作的關(guān)系型數(shù)據(jù)庫(kù)添加對(duì)應(yīng)的JDBC驅(qū)動(dòng)包,用于數(shù)據(jù)庫(kù)連接。本書將針對(duì)MySQL數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)遷移操作,所以需要將mysql-connector-java-5.1.32.jar(版本可以自行選擇)包上傳至Sqoop解壓包目錄的lib文件夾下。
3**.Sqoop**效果測(cè)試
執(zhí)行完上述Sqoop的安裝配置操作后,就可以執(zhí)行Sqoop相關(guān)指令來驗(yàn)證Sqoop的執(zhí)行效果了,具體指令如下(此次在Sqoop的解壓包下執(zhí)行,同時(shí)注意數(shù)據(jù)庫(kù)密碼)。
$ sqoop list-databases \ -connect jdbc:mysql://localhost:3306/ \ --username root --password 123456
上述指令中,sqoop list-databases用于輸出連接的本地MySQL數(shù)據(jù)庫(kù)中的所有數(shù)據(jù)庫(kù)名,如果正確返回指定地址的MySQL數(shù)據(jù)庫(kù)信息,那么說明Sqoop配置完畢。
執(zhí)行上述指令后,終端效果如圖1所示。
圖1 Sqoop驗(yàn)證效果
從圖1可以看出,執(zhí)行完上述指令后,通過Sqoop成功查詢出連接的MySQL數(shù)據(jù)庫(kù)中的所有數(shù)據(jù)庫(kù)名,這就說明Sqoop的安裝配置正確。
猜你喜歡: