使用sqoop将MySQL数据库中的数据导入Hbase
2016-01-16 16:27
666 查看
使用sqoop将MySQL数据库中的数据导入Hbase
前提:安装好 sqoop、hbase。
下载jbdc驱动:mysql-connector-java-5.1.10.jar
将 mysql-connector-java-5.1.10.jar 复制到 /usr/lib/sqoop/lib/ 下
MySQL导入HBase命令:
sqoop import --connect jdbc:mysql://10.10.97.116:3306/rsearch --table researchers --hbase-table A --column-family person --hbase-row-key id --hbase-create-table --username
'root' -P
说明:
--connect jdbc:mysql://10.10.97.116:3306/rsearch 表示远程或者本地 Mysql 服务的URI,3306是Mysql默认监听端口,rsearch是数据库,若是其他数据库,如Oracle,只需修改URI即可。
--table researchers 表示导出rsearch数据库的researchers表。
--hbase-table A 表示在HBase中建立表A。
--column-family person 表示在表A中建立列族person。
--hbase-row-key id 表示表A的row-key是researchers表的id字段。
--hbase-create-table 表示在HBase中建立表。
--username 'root' 表示使用用户root连接Mysql。
注意:
HBase的所有节点必须能够访问MySQL数据库,不然会出现如下错误:
java.sql.SQLException: null, message from server: "Host '10.10.104.3' is not allowed to connect to this MySQL server"
[plain] view
plaincopy
在MySQL数据库服务器节点上执行以下命令允许远程机器使用相应用户访问本地数据库服务器:
[root@gc01vm6 htdocs] # /opt/lampp/bin/mysql
mysql> use mysql;
Database changed
mysql> GRANT ALL PRIVILEGES ON rsearch.* TO 'root'@'10.10.104.3' IDENTIFIED BY '' WITH GRANT OPTION;
mysql> GRANT ALL PRIVILEGES ON rsearch.* TO 'root'@'10.10.104.5' IDENTIFIED BY '' WITH GRANT OPTION;
mysql> GRANT ALL PRIVILEGES ON rsearch.* TO 'root'@'10.10.104.2' IDENTIFIED BY '' WITH GRANT OPTION;
这里10.10.104.2,10.10.104.3,10.10.104.5 是HBase节点。
[root@gd02 hadoop]# sqoop
import --connect jdbc:mysql://10.10.97.116:3306/rsearch --table researchers --hbase-table A --column-family person --hbase-row-key id --hbase-create-table --username 'root' -P
利用sqoop将mysql数据同步到hive手记
http://www.54chen.com/java-ee/sqoop-mysql-to-hive.html
利用Sqoop将数据从数据库导入到HDFS
http://www.cnblogs.com/gpcuster/archive/2011/03/01/1968027.html
Sqoop
http://www.duyifan.com/
MySQL向Hive/HBase的迁移工具
http://www.javabloger.com/article/hadoop-hive-mysql-sqoop.html
官方手册
http://archive.cloudera.com/cdh/3/sqoop/SqoopUserGuide.html
前提:安装好 sqoop、hbase。
下载jbdc驱动:mysql-connector-java-5.1.10.jar
将 mysql-connector-java-5.1.10.jar 复制到 /usr/lib/sqoop/lib/ 下
MySQL导入HBase命令:
sqoop import --connect jdbc:mysql://10.10.97.116:3306/rsearch --table researchers --hbase-table A --column-family person --hbase-row-key id --hbase-create-table --username
'root' -P
说明:
--connect jdbc:mysql://10.10.97.116:3306/rsearch 表示远程或者本地 Mysql 服务的URI,3306是Mysql默认监听端口,rsearch是数据库,若是其他数据库,如Oracle,只需修改URI即可。
--table researchers 表示导出rsearch数据库的researchers表。
--hbase-table A 表示在HBase中建立表A。
--column-family person 表示在表A中建立列族person。
--hbase-row-key id 表示表A的row-key是researchers表的id字段。
--hbase-create-table 表示在HBase中建立表。
--username 'root' 表示使用用户root连接Mysql。
注意:
HBase的所有节点必须能够访问MySQL数据库,不然会出现如下错误:
java.sql.SQLException: null, message from server: "Host '10.10.104.3' is not allowed to connect to this MySQL server"
[plain] view
plaincopy
在MySQL数据库服务器节点上执行以下命令允许远程机器使用相应用户访问本地数据库服务器:
[root@gc01vm6 htdocs] # /opt/lampp/bin/mysql
mysql> use mysql;
Database changed
mysql> GRANT ALL PRIVILEGES ON rsearch.* TO 'root'@'10.10.104.3' IDENTIFIED BY '' WITH GRANT OPTION;
mysql> GRANT ALL PRIVILEGES ON rsearch.* TO 'root'@'10.10.104.5' IDENTIFIED BY '' WITH GRANT OPTION;
mysql> GRANT ALL PRIVILEGES ON rsearch.* TO 'root'@'10.10.104.2' IDENTIFIED BY '' WITH GRANT OPTION;
这里10.10.104.2,10.10.104.3,10.10.104.5 是HBase节点。
[root@gd02 hadoop]# sqoop
import --connect jdbc:mysql://10.10.97.116:3306/rsearch --table researchers --hbase-table A --column-family person --hbase-row-key id --hbase-create-table --username 'root' -P
利用sqoop将mysql数据同步到hive手记
http://www.54chen.com/java-ee/sqoop-mysql-to-hive.html
利用Sqoop将数据从数据库导入到HDFS
http://www.cnblogs.com/gpcuster/archive/2011/03/01/1968027.html
Sqoop
http://www.duyifan.com/
MySQL向Hive/HBase的迁移工具
http://www.javabloger.com/article/hadoop-hive-mysql-sqoop.html
官方手册
http://archive.cloudera.com/cdh/3/sqoop/SqoopUserGuide.html
相关文章推荐
- PLSQL Developer使用oracle_instantclient_basic连接Oracle数据库
- mysql中如何查询最近24小时、top n查询
- 重置PL/SQL Developer工具栏布局
- 在django中使用MySQL数据库(一)
- Sqoop将SQLServer数据导入HBase
- pt-heartbeat监控mysql主从复制延迟
- Openstack中数据库Galera/mysql 集群备忘笔记
- SQL Server 2016 执行卷维护任务
- EF架构~有时使用SQL更方便
- oracle PS/SQL DEVELOPER
- [Err] 2006 - MySQL server has gone away 错误 MySQL server hasgoneaway报错原因分析及解决办法
- mysql主从复制架构
- SQL SERVER更改表架构
- Keepalived 监控 mysql 主从切换
- Loops with PL/SQL
- MySQL 数据库主从复制架构
- MySQL 数据库主从复制架构
- sqlzoo练习答案--More JOIN operations
- MySQL 数据库主从复制架构
- SQLSERVER索引的维护