我无法从 Hadoop 集群sqoop
数据到另一个具有 SqLite 数据库的 EC2 服务器,我正在使用以下命令:
sqoop export -D default-character-set=utf8 \
--connect "jdbc:sqlite://ip_adresss/home/ec2-user/testLocaldb.db" \
--username user_name \
--password **** \
--direct \
--export-dir hdfs_path \
--input-fields-terminated-by '|' \
--table table_name
错误:
ERROR tool.BaseSqoopTool: Got error creating database manager:
java.io.IOException: No manager for connect string:
jdbc:sqlite://ip_adress/home/ec2-user/testLocaldb.db
最佳答案
Sqlite 不通过网络协议(protocol)公开,因此无法为数据库指定网络地址。
你需要
- 将 sqlite JDBC 驱动程序添加到 sqoop 类路径
- 导出到本地文件系统
- 将该 sqlite 文件复制到您的外部服务器
- 合并两个sqlite文件之间的表
或者,您可以使用 Amazon RDS 或 Redshift 为自己提供 Sqoop 喜欢的合适的网络数据库
关于sqlite - Sqoop数据到sqlite出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49332966/