一。
关于 sqoop ,一个有效与关系型数据库进行大数据交换的工具,
Apache Sqoop(TM) is a tool designed for efficiently transferring bulk data between Apache Hadoop and structured datastores such as relational databases.
二。
我的环境;
hadoop-0.20.2,
mysql-connector-java-5.1.26-bin
sqoop-1.4.4.bin__hadoop-0.20
mysql: 5.5.24 装在window系统中
1.
sqoop 的安装,参考 http://tech.techweb.com.cn/viewthread.php?tid=533477&page=1
需要先行配置 $HADOOP_HOME配置到环境变量
2.
mysql 安装完之后,设置root 可以从其他ip访问,将 ip改成 %
或者这样:
GRANT ALL PRIVILEGES ON *.* TO 'me'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;
如果你想允许用户me从ip为192.168.1.4的主机连接到mysql服务器,并使用password作为密码
GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.1.4' IDENTIFIED BY 'password' WITH GRANT OPTION;
GRANT ALL PRIVILEGES ON *.* TO 'root'@'10.10.40.54' IDENTIFIED BY '123' WITH GRANT OPTION;
如果不这样,会报
ERROR sqoop.Sqoop: Got exception running Sqoop: java.lang.RuntimeException:
java.sql.SQLException: null,
message from server: "Host '192.168.1.110' is not allowed to connect to this MySQL server"
三:正式连接
1.
先试一试 查出所有的表, 在sqoop路径下面,我的语句如下:
[root@sj sqoop-1.4.4.bin__hadoop-0.20]:bin/sqoop list-tables --connect jdbc:mysql://192.168.1.103:3306/operation --username root --password root
<未完待续>