gpt4 book ai didi

hadoop sqoop加载csv文件到mysql

转载 作者:可可西里 更新时间:2023-11-01 15:12:58 26 4
gpt4 key购买 nike

我正在学习 hadoop sqoop。我正在研究 hortonworks 沙箱(单节点的 hadoop 虚拟机:http://hortonworks.com/products/hortonworks-sandbox/#install)。

我正在尝试通过 sqoop 将 csv 文件加载到 mysql 表中。我在其中创建了一个数据库 flightinfo 和一个表 weather。我在配置单元中创建了一个名为 sqoop_tmp 的表,其中包含该 csv 文件的文件位置。

我使用以下命令将 csv 加载到 mysql 中:

    sqoop export --connect jdbc:mysql://localhost/flightinfo –-table weather –-export-dir /apps/hive/warehouse/sqoop_tmp

这是错误信息: enter image description here

更新:@z-1我试过你的代码,它返回了一些不同的东西 enter image description here

最佳答案

您必须提供 MySQL 的用户名和密码,并且必须具有访问数据库的权限。

看起来您全新安装了 mysql,并且没有配置 root 帐户以使用 root 密码进​​行保护。

您可以使用以下步骤执行此操作:

  1. $ mysqladmin -u root 密码 "newpassword"例如 $ mysqladmin -u root password mysql-root-password
  2. 重新启动 MySQL 守护进程。 $ sudo service mysqld restart$ sudo/etcinit.d/mysqld restart
  3. 使用 $ mysql -u root -P 登录 MySQL,并在出现提示时输入密码。

如果您以根用户身份创建了数据库。现在您可以发出以下 sqoop 命令将数据从 hdfs 导出到 sqoop 数据库。

$ sqoop export --connect jdbc:mysql://localhost/flightinfo --username root -P --table weather --export-dir/apps/hive/warehouse/sqoop_tmp

仍然面临权限问题??用户访问数据库的权限是问题所在。

然后,您应该能够通过使用以下步骤授予权限来解决。

  1. 使用 $ mysql -u root -P 登录 MySQL

  2. mysql> GRANT all PRIVILEGES on filghtinfo.* to 'root'@'localhost' IDENTIFIED BY 'password'

    注意:这里设置的密码应该是sqoop使用的。

关于hadoop sqoop加载csv文件到mysql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32185452/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com