大数据平台Sqoop访问NetSuite设置
1.下载JDBC驱动程序(Linux64)
参考:下载链接驱动程序
2.安装用于Linux的JDBC驱动程序
1)下载完成后,将.zip文件的内容提取到所需的位置。
2)在提取.zip文件内容的位置中,找到NQjc.jar文件。该文件包含可通过将NQjc.jar文件添加到类路径中来在Java环境中注册的驱动程序
sudo cp NQjc.jar /opt/cloudera/parcels/CDH-6.2.0-1.cdh6.2.0.p0.967373/lib/sqoop/lib/
sudo cp NQjc.jar /opt/cloudera/parcels/CDH-6.2.0-1.cdh6.2.0.p0.967373/lib/hadoop/lib/
sudo -u hdfs hadoop fs -putNQjc.jar /user/oozie/share/lib/lib_20200313175221/sqoop/
#分发到其他设备
xsync /opt/cloudera/parcels/CDH-6.2.0-1.cdh6.2.0.p0.967373/lib/hadoop/lib/
xsync /opt/cloudera/parcels/CDH-6.2.0-1.cdh6.2.0.p0.967373/lib/sqoop/lib/
3.Sqoop访问NS测试
sqoop list-databases \ --driver com.netsuite.jdbc.openaccess.OpenAccessDriver \ --connect "jdbc:ns://4857309.connect.api.netsuite.com:1708;ServerDataSource=NetSuite.com;encrypted=1;NegotiateSSLClose=false;CustomProperties=(AccountID=4857309;RoleID=1035)" \ --username [email protected] \ --password Abc123456789 \ |
---|
sqoop list-tables \ --driver com.netsuite.jdbc.openaccess.OpenAccessDriver \ --connect "jdbc:ns://4857309.connect.api.netsuite.com:1708;ServerDataSource=NetSuite.com;encrypted=1;NegotiateSSLClose=false;CustomProperties=(AccountID=4857309;RoleID=1035)" \ --username [email protected] \ --password Abc123456789 \ |
---|
4.同步数据测试
编写脚本,通过Hue+Oozie构建工作流,运行测试
#!/bin/bash #db_date=$2 import_data(){ import_accounts(){ case $1 in |
---|
查看HDFS目录,数据已经生成
5.问题
脚本运行,一直报错,百思不得其解
ERROR tool.BaseSqoopTool: Error parsing arguments for import:
ERROR tool.BaseSqoopTool: Unrecognized argument:
原因分析:编写的脚本‘\’后面多了一个空格
解决方案:删除多余空格重新运行工作任务通过