gpt4 book ai didi

sql-server - Sqoop 导出到 SQL Server : schemas?

转载 作者:可可西里 更新时间:2023-11-01 14:25:15 27 4
gpt4 key购买 nike

我想将 HDFS 中的数据导出到架构 my_schema 中的 SQL Server 表。

我试过像导入命令一样的--schema:

sqoop export \
--libjars /opt/mapr/sqoop/sqoop-1.4.6/lib/sqljdbc4.jar \
--connect "jdbc:sqlserver://MY-SERVER-DNS;database=my_db;" \
--schema "myschema" \
--table "my_table" \
--export-dir /path/to/my/hdfs/dir

ERROR tool.BaseSqoopTool: Unrecognized argument: --schema

--表“schema.table”

sqoop export \
--libjars /opt/mapr/sqoop/sqoop-1.4.6/lib/sqljdbc4.jar \
--connect "jdbc:sqlserver://MY-SERVER-DNS;database=my_db;" \
--table "my_schema.my_table" \
--export-dir /path/to/my/hdfs/dir

INFO manager.SqlManager:
Executing SQL statement: SELECT t.* FROM [my_schema.my_table] AS t WHERE 1=0

ERROR manager.SqlManager: Error executing statement:
com.microsoft.sqlserver.jdbc.SQLServerException:
Invalid object name 'my_schema.my_table'.

有什么办法可以用 sqoop 做到这一点吗?还是其他技术?

编辑:

sqoop export \
--libjars /opt/mapr/sqoop/sqoop-1.4.6/lib/sqljdbc4.jar \
--connect "jdbc:sqlserver://MY-SERVER-DNS;database=my_db;schema=my_schema;" \
--table "my_table" \
--export-dir /path/to/my/hdfs/dir

INFO manager.SqlManager: Executing SQL statement: SELECT t.* FROM [my_table] AS t WHERE 1=0
16/07/25 10:46:21 ERROR manager.SqlManager:
Error executing statement: com.microsoft.sqlserver.jdbc.SQLServerException:
Invalid object name 'my_table'.

这不是识别模式。

最佳答案

在连接字符串中提供模式:

jdbc:sqlserver://MY-SERVER-DNS;databaseName=my_db;schema=my_schema;

所以你的 export sqoop 命令应该是:

sqoop export \
--libjars /opt/mapr/sqoop/sqoop-1.4.6/lib/sqljdbc4.jar \
--connect "jdbc:sqlserver://MY-SERVER-DNS;databaseName=my_db;schema=my_schema;" \
--table "my_table" \
--export-dir /path/to/my/hdfs/dir

另外:

Custom schemas are supported for both import and export job - 根据 sqoop 指南中的语法,--schema 应作为 -- --schema 传递:

所以你的 export sqoop 命令应该是:

sqoop export \
--libjars /opt/mapr/sqoop/sqoop-1.4.6/lib/sqljdbc4.jar \
--connect "jdbc:sqlserver://MY-SERVER-DNS;databaseName=my_db;" \
--export-dir /path/to/my/hdfs/dir
--table "my_table" \
-- --schema my_schema \

关于sql-server - Sqoop 导出到 SQL Server : schemas?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38574528/

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