Sqoopのインストールと構成
1つは、Sqoopを理解する
sqoopは、Hadoopとリレーショナルデータベースサーバー間でデータを転送するためのツールです。これは主に、ハイブとリレーショナルデータベース間でデータを転送するために使用されます。リレーショナルデータベースからHadoopのHDFSにデータをインポートしたり、HDFSからリレーショナルデータベースにデータをインポートしたりできます。
2つのコア機能があります。
-
インポート、入居
-
エクスポート、移動
2.Sqoopインストールパッケージをダウンロードします
ダウンロードリンク:https://mirrors.tuna.tsinghua.edu.cn/apache/sqoop/
3、Sqoopをインストールします
最初にファイルをLinuxに入れ、次にコマンドtarを使用してsqoopを解凍します
[root@master dev]# tar -zxvf sqoop-1.4.7.bin__hadoop-2.6.0.tar.gz
sqoop-1.4.7.bin__hadoop-2.6.0をsqoopに変更します
[root@master dev]# mv sqoop-1.4.7.bin__hadoop-2.6.0 sqoop
ホームディレクトリにappsフォルダを作成します。
[root@master dev]# mkdir -p /home/apps
sqoopフォルダーをアプリに配置します。
[root@master dev]# mv sqoop /home/apps
第4に、Sqoopを構成します
- システム環境変数を構成する
viコマンドを使用して、システム環境変数ファイルを変更します
[root@master dev]# vi /etc/profile
次の環境変数を追加します
export SQOOP_HOME=/home/apps/sqoop
export PATH=$PATH:$SQOOP_HOME/bin
追加された環境変数をすぐに有効にします
[root@master dev]# source /etc/profile
- Sqoop構成ファイルを変更する
Sqoopの構成ファイルはconfフォルダーにあります
[root@master dev]# cd /home/apps/sqoop/conf
[root@master conf]# ll
total 28
-rw-rw-r--. 1 centos centos 3895 Dec 19 2017 oraoop-site-template.xml
-rw-rw-r--. 1 centos centos 1404 Dec 19 2017 sqoop-env-template.cmd
-rwxr-xr-x. 1 centos centos 1345 Dec 19 2017 sqoop-env-template.sh
-rw-rw-r--. 1 centos centos 6044 Dec 19 2017 sqoop-site-template.xml
-rw-rw-r--. 1 centos centos 6044 Dec 19 2017 sqoop-site.xml
mvを使用してファイル名をsqoop-env.shに変更し、viコマンドをファイルに書き込みます
[root@master conf]# mv sqoop-env-template.sh sqoop-env.sh
[root@master conf]# vi sqoop-env.sh
インストールされているHadoopコンポーネントを変更し、インストールされていない場合はコメントします。
#Set path to where bin/hadoop is available
export HADOOP_COMMON_HOME=/home/hadoop/hadoop-2.9.2
#Set path to where hadoop-*-core.jar is available
export HADOOP_MAPRED_HOME=/home/hadoop/hadoop-2.9.2
#set the path to where bin/hbase is available
export HBASE_HOME=/home/apps/habase
#Set the path to where bin/hive is available
export HIVE_HOME=/home/apps/hive
#Set the path for where zookeper config dir is
export ZOOCFGDIR=/home/apps/zookeeper
sqoop-env.shファイルで一般的なmapreduce構成が必要なのはなぜですか???
apache hadoopのインストールでは、4つの主要コンポーネントが同じhadoop_homeにインストールされます
ただし、CDH、HDPでは、これらのコンポーネントはオプションです。
Hadoopをインストールする場合、HDFSまたはYARNのみを選択的にインストールできます。
CDHとHDPがhadoopをインストールする場合、HDFSとMapReduceは異なる場所にインストールされる可能性があります。
- MySQLドライバーパッケージのダウンロード
リンク:https
://pan.baidu.com/s/15n6ESMrHegujUs8fITjp8Q抽出コード:fg7c
[root@master dev]# mv mysql-connector-java-5.1.48.jar /home/apps/sqoop/lib
注:起動に失敗した場合は、MySQLドライバーパッケージのバージョンに問題がある可能性があります
sqoopのインストールが成功したことを確認します
[root@master dev]# sqoop-version
5、Sqoopの基本コマンド
まず、sqoop helpコマンドを使用して、sqoopがサポートするコマンドを確認できます。
[root@master dev]# sqoop help
21/01/15 18:53:02 INFO sqoop.Sqoop: Running Sqoop version: 1.4.7
usage: sqoop COMMAND [ARGS]
Available commands:
codegen Generate code to interact with database records
create-hive-table Import a table definition into Hive
eval Evaluate a SQL statement and display the results
export Export an HDFS directory to a database table
help List available commands
import Import a table from a database to HDFS
import-all-tables Import tables from a database to HDFS
import-mainframe Import datasets from a mainframe server to HDFS
job Work with saved jobs
list-databases List available databases on a server
list-tables List available tables in a database
merge Merge results of incremental imports
metastore Run a standalone Sqoop metastore
version Display version information
See 'sqoop help COMMAND' for information on a specific command.
[root@master dev]#
使用方法がわからない場合は、sqoop help importコマンドを使用して、特定のコマンドがどのように使用されているかを確認できます。
[root@master dev]# sqoop help import
6、例
MySQLにあるデータベースを表示する
[root@master dev]# sqoop list-databases --connect jdbc:mysql://192.168.1.121:3306/ --username root --password 123456789
21/01/15 19:01:38 INFO sqoop.Sqoop: Running Sqoop version: 1.4.7
21/01/15 19:01:38 WARN tool.BaseSqoopTool: Setting your password on the command-line is insecure. Consider using -P instead.
21/01/15 19:01:38 INFO manager.MySQLManager: Preparing to use a MySQL streaming resultset.
Fri Jan 15 19:01:38 CST 2021 WARN: Establishing SSL connection without server's identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requirements SSL connection must be established by default if explicit option isn't set. For compliance with existing applications not using SSL the verifyServerCertificate property is set to 'false'. You need either to explicitly disable SSL by setting useSSL=false, or set useSSL=true and provide truststore for server certificate verification.
information_schema
hive
mysql
performance_schema
sys
[root@master dev]#
結論:ビッグデータHadoopはsqoopのインストールと構成に注意