将Sqoop连接到mysql

时间:2013-08-02 12:33:05

标签: hadoop hive sqoop

我已经安装了sqoop,但现在的问题是如何使用sqoop与mysql进行交互我是sqoop的新手,是否需要在使用Sqoop时安装HBase。 任何帮助都会得到满足。

7 个答案:

答案 0 :(得分:1)

将mysql下载到hdfs jar文件中。如果您使用oracle db作为feed文件,则必须获取oracle的相关jar文件,然后将其放在下面提到的路径中

然后将其放在usr / bin / lib / sqoop中。

现在尝试彻底压缩命令,它将对您有用。

答案 1 :(得分:0)

在本论坛提问之前,你必须做好功课。 Sqoop是将数据从RDBMS获取到HDFS。

答案 2 :(得分:0)

不需要HBase。执行任何sqoop命令时可能会收到“HBASE_HOME”未设置的警告,但它只是一个警告。你可以忽略它。

使用sqoop帮助查看可用于导入或导出数据的选项。

hadoop@master:~$ sqoop help
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
  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

您可以进一步获取特定的命令用法,例如“import”

sqoop import --help

每个命令都有几个选项来自定义操作。

答案 3 :(得分:0)

将数据从MySql导入HDFS(基本):

sqoop import --connect jdbc:mysql://mysqlhost/dbName --username user --password 123 --table tableName

将数据从HDFS导出到MySQL(基本):

sqoop export --connect jdbc:mysql://mysqlhost/dbName --username user --password 123 --table tableName --exportDir dir/with/data

更多信息:https://sqoop.apache.org/docs/1.4.5/SqoopUserGuide.html

答案 4 :(得分:0)

请在交互式shell中按照以下步骤操作。

  1. sudo mysql(启动mysql)
  2. 显示数据库;
  3. 使用 databasename (命令选择数据库)
  4. 显示表格; (查看上述数据库中的表列表,并记下要在hdfs中导入的表名,并确保列中有主键)
  5. 退出;
  6. sqoop import --connect jdbc:mysql:// mysqlhost / 表中存在的数据库名称 --username root --table 表名称 --m 1

答案 5 :(得分:0)

所有你需要mysql" JDBC"连接器。下载并存储在sqoop / lib文件中

sqoop import --connect jdbc:mysql://localhost:3306/databasename --username mysqlusername --password mysqlpassword --table employees --target-dir /databasesqoop/sqoop/

从这里下载JDBC连接器/驱动程序: https://dev.mysql.com/downloads/connector/j/5.1.html

答案 6 :(得分:0)

不需要Hbase,您只需要相应数据库的sqoop和jdbc驱动程序,放置lib目录并运行sqoop