import:
sqoop import connect jdbc:mysql://mysql.example.com/sqoop --username sqoop --password sqoop --table cities
--connect:指定JDBC URL
--username/password:mysql数据库的用户名
--table:要读取的数据库表
sqoop import connect jdbc:mysql://mysql.example.com/sqoop --username sqoop --password sqoop --table cities --target-dir /etc/input/cities
--target-dir:指定数据导出后的目录,这样指定的目录只是一次会话的
sqoop import connect jdbc:mysql://mysql.example.com/sqoop --username sqoop --password sqoop --table cities --warehouse-dir /etl/input/
--warehouse-dir:指定数据导出后的目录,会根据表名来自动生成/etl/input/cities,只需要一次指定,后面的每次导出都是在此目录下,以表名命名的。
sqoop import connect jdbc:mysql://mysql.example.com/sqoop --username sqoop --password sqoop --table cities --where ''country='usa'''
--where:指定导出部分数据的条件
sqoop import connect jdbc:mysql://mysql.example.com/sqoop --username sqoop --table cities -P
-p:动态的数据密码,安全
sqoop import connect jdbc:mysql://mysql.example.com/sqoop --username sqoop --table cities --password-file my-sqoop-password
--password-file:指定密码文件,安全
sqoop import connect jdbc:mysql://mysql.example.com/sqoop --username sqoop --password sqoop --table cities --as-sequencefile
--as-sequencefile:指定导出的数据以sequencefile文件格式保存
sqoop import connect jdbc:mysql://mysql.example.com/sqoop --username sqoop --password sqoop --table cities --as-avrodatafile
--as-avrodatafile:指定导出的数据以avrodatafile文件格式保存
sqoop import connect jdbc:mysql://mysql.example.com/sqoop --username sqoop --password sqoop --table cities --num-mappers 10
--num-mappers 10:指定运行的map数据量
sqoop import connect jdbc:mysql://mysql.example.com/sqoop --username sqoop --password sqoop --table cities --null-string '\\N' --null-non-string '\\N'
--null-string '\\N' --null-non-string '\\N':指定mysql中的null在导出后以\n保存
sqoop import connect jdbc:mysql://mysql.example.com/sqoop --username sqoop --password sqoop --table cities --incremental append --check-column id --last-value 1
--incremental append:指定导出新增的数据
--check-column id:指定导出针对新增的标准是id
--last-value 1:指定从id=1之后插入的数据
export:
sqoop export -Dsqoop.export.records.per.statement=10 --connect jdbc:mysql://mysql.example.com/sqoop --username sqoop --password sqoop --table cities --export-dir cities --batch
--batch:指导入是批量的导入
-Dsqoop.export.records.per.statement=10:指定批量导入一次的数据条数
sqoop export --connect jdbc:mysql://mysql.example.com/sqoop --username sqoop --password sqoop --table cities --export-dir cities --staging-table staging_cities
--staging-table:指定导入时的零时表,只有当数据完全导入成功后,才会将数据导入到目标表中,如果中间出现失败则会将零时表中的数据删除,这样就保证了原子性,从而不会出现脏读
sqoop export --connect jdbc:mysql://mysql.example.com/sqoop --username sqoop --password sqoop --table cities --export-dir cities --update-key id
--update-key:指定依据什么字段来更新表,即当id一样时,则就更新这条记录
sqoop export --connect jdbc:mysql://mysql.example.com/sqoop --username sqoop --password sqoop --table cities --export-dir cities --update-key id --update-mode allowinsert
--update-key:指定依据什么字段来更新表,即当id一样时,则就更新这条记录
-update-mode allowinsert:指定除了可以更新数据之外,其余不相等的数据同样可以插入表中
sqoop export --connect jdbc:mysql://mysql.example.com/sqoop --username sqoop --password sqoop --table cities --export-dir cities --columns country,city
--columns:指定要插入的列名
sqoop与hive结合:
sqoop import --connect jdbc:mysql://mysql.example.com/sqoop --username sqoop --password sqoop --table cities --hive-import
--hive-import:指定从hive中导出
sqoop与hbase结合:
sqoop export --connect jdbc:mysql://mysql.example.com/sqoop --username sqoop --password sqoop --table cities --hbase-table cities --column-family world
--hbase-table:指定hbase的表名
--column-family:指定hbase表的列族名
分享到:
相关推荐
本文档主要介绍了 Sqoop 的 `import` 和 `export` 功能。 一、Sqoop Import 导入数据 1. **全量导入** 当你需要将整个 RDBMS 表导入 HDFS 时,可以使用 `--connect`、`--username`、`--password`、`--table` 和 `...
通过掌握 Sqoop 的基本概念、安装配置、import 和 export 命令,你将能够有效地在 Hadoop 和 RDBMS 之间进行数据迁移。在实际操作中,可能还需要根据具体需求调整参数,以满足不同的导入导出场景。持续学习和实践 ...
常用的sqoop操作方法,主要是import与export的常用参数
sqoop export --connect $CONNECTION_STRING --table your_table --export-dir /hdfs/path --input-fields-terminated-by ',' --input-lines-terminated-by '\n' ``` 5. **列出数据库和表**: 可以使用 `list-...
- 基本语法:`sqoop import/export --connect <jdbc-url> --username <username> --password <password> [其他选项]` - 导入数据:`sqoop import --table <table-name> --target-dir <hdfs-path>` - 导出数据:`...
sqoop import --connect jdbc:mysql://10.13.7.108:3306/sqoopDB --username persistence --password 123456 --table employees --target-dir /persistence/sqoop/sqoop_employees -m 1 ``` - `--connect`:指定...
- 示例命令: `sqoop export --connect jdbc:mysql://localhost/testdb --username root --password 123456 --table testtable --export-dir /user/hadoop/sqoop` #### 小结 本文详细介绍了如何在Hadoop2.6伪分布...
为了简化命令行输入,Sqoop 提供了一些命令别名,如 `import`、`export` 等。 ##### 6.2 控制 Hadoop 安装 Sqoop 可以指定不同的 Hadoop 安装路径,以适应不同的集群环境。这可以通过设置 `--hadoop-version` 参数...
Sqoop 提供了两个主要的命令:import 和 export。import 命令用于从关系数据库中导出数据,而 export 命令用于将数据从 Hadoop 导出到关系数据库中。 例如,以下命令用于从 SqlServer 数据库中导出数据: $ bin/...
sqoop export --connect jdbc:mysql://localhost:3306/dbname --username root --password passwd --table tab_name --export-dir /path/to/hdfs/directory ``` #### 实战案例 1. **全部导入**:将整个表的数据...
export SQOOP_HOME=/usr/local/sqoop-* export PATH=$PATH:$SQOOP_HOME/bin ``` 4. **依赖库**:Sqoop 需要连接到数据库的 JDBC 驱动。将对应数据库的 JDBC 驱动 JAR 文件放入 `SQOOP_HOME/lib` 目录。 5. **...
sqoop export --connect jdbc:mysql://<hostname>:<port>/<database> --table <tablename> --username <username> --password <password> --export-dir ``` 【增量导入】 对于需要持续更新的数据, Sqoop 提供了...
1. **全量导入**: `sqoop import --connect jdbc:mysql://localhost/testdb --table employees --username user --password pass --target-dir /user/hadoop/employees` 2. **增量导入**: `sqoop import --...
1. 导入数据:使用`sqoop import`命令,例如,从MySQL导入数据到HDFS: ``` sqoop import --connect 'jdbc:mysql://localhost/testdb' \ --username root --password password --table employees --target-dir /...
3. 配置环境变量,打开 `.bashrc` 文件,如 `vim ~/.bashrc`,并在文件末尾添加SQOOP_HOME路径和PATH更新:`export SQOOP_HOME=/apps/sqoop` 和 `export PATH=$PATH:$SQOOP_HOME/bin`。然后使用 `source ~/.bashrc` ...
4. 导出数据:如果需要,也可以使用`sqoop export`命令将HDFS中的数据导回SQL Server。 5. 执行ETL操作:Sqoop还支持在导入导出过程中进行简单的数据转换,比如添加字段、过滤记录等。 6. 故障排查:在执行过程中...
例如,可以使用`bin/sqoop import`命令将数据库中的数据导入到Hadoop集群,或者使用`bin/sqoop export`命令将Hadoop的数据导出到数据库。 在实际应用中,Sqoop2提供了许多高级特性,如并行导入导出、动态分区、支持...
3. **数据导入**:使用 `sqoop import` 命令进行数据导入,例如: ```bash sqoop import \ --connect jdbc:mysql://ip:3306/sqoop \ --username root \ --password admin \ --table mysql1 \ --fields-...