怎么用sqoop把hive的数据导入mysql?
运行环境centos5.6hadoophive
Sqoop是clouder公司在hadoop技术支持下开发的工具,用于在关系数据库和HDFS、Hive之间导入导出数据。
上海尚学堂hadoop大数据培训群原创,hadoop大数据技术相关文章陆续呈现,敬请关注!
使用过程中可能遇到的问题:
Sqoop依赖于zookeeper,所以ZOOKEEPER_HOME必须配置到环境变量中。
Sqoop-1.2.0-CDH3B4依赖于hadoop-core-0.20.2-CDH3B4.jar,所以需要下载hadoop-0.20.2-CDH3B4.tar.gz,解压后复制Hadoop-0.20.2-cdh3b4/Hadoop-Core-0.20.2-cdh3b4.jar到Sqoop。
1首先安装sqoop,如果使用clouder发行版的话非常简单。
#yum安装sqoop
如果用官方版本的话。
#cd
#wget
#yum-y安装sqoop
将安装Sqoop。
2使用sqoop
首先,将MySQL-connector-Java-5.1.16-bin.jar文件复制到文件夹/usr/lib/sqoop/lib中。
3导入和导出数据库
1)列出mysql数据库中的所有数据库命令。
#sqOOPlist-databases-connectJDBC:mysql://localhost:3306/-用户名root-密码123456
2)连接mysql,列出数据库中的表命令。
#sqOOPlist-tables-connectJDBC:mysql://localhost:3306/test-usernameroot-password123456
命令中的Test是mysql数据库中的测试数据库名,usernamepassword分别是mysql数据库的用户密码。
3)将关系数据的表结构复制到hive中
sqoop创建配置单元表-连接JDBC:mysql://localhost:3306/test-table用户名-用户名root-密码123456-hive-table测试
其中-tableusername是mysql中数据库测试的表-hive-tabletest是hive中新创建的表的名称。
4)将文件从关系数据库导入hive。
sqoopimport-connectJDBC:mysql://localhost:3306/test-usernameroot-passwordMySQL-password-tablet1-hive-import
5)将hive中的表格数据导入mysql。
。/sqoopexport-connectJDBC:mysql://localhost:3306/test-usernameroot-passwordadmin-tableuv_info-export-dir/user/hive/warehouse/uv/dt2011-08-03
如果您报告了一个错误,
11/08/0510:51:22信息运行job:job_201108051007_0010
11/08/0510:51:23信息地图0%减少0%
11/08/0510:51:36信息任务Id:尝试_201108051007_0010_m_000000_0,状态:失败
位于java.util.AbstractList$()
在uv_info。__loadFromFi
学习大数据难吗?
在学习之前,首先要考虑的不是难度,而是如何学好。学习大数据的一些建议:
1.重点介绍大数据系统的架构和原理,比如分布式存储和计算的思想。
2.大数据框架的系统,比如hadoop,spark等等。
多做实验,多请教有经验的人。
只要有信心,有坚持,一定能学好。