IBM Db2 Warehouse客户端容器db_迁移错误
简短描述:db_迁移IBM Db2仓库客户端容器时出错 我已经成功地从docker安装了DB2Warehouse的客户机容器v2.9.0。我试图运行db_migrate命令将数据从“旧”PDA服务器复制到我们自己的DB2仓库IBM Db2 Warehouse客户端容器db_迁移错误,db2,db2-woc,Db2,Db2 Woc,简短描述:db_迁移IBM Db2仓库客户端容器时出错 我已经成功地从docker安装了DB2Warehouse的客户机容器v2.9.0。我试图运行db_migrate命令将数据从“旧”PDA服务器复制到我们自己的DB2仓库 docker run -itd --net=host -v db2wh_vol:/mnt/clientdir --name=client store/ibmcorp/db2wh_ce:v2.9.0-db2wh_client-linux 我在客户端容器中发出以下命令(出于安
docker run -itd --net=host -v db2wh_vol:/mnt/clientdir --name=client store/ibmcorp/db2wh_ce:v2.9.0-db2wh_client-linux
我在客户端容器中发出以下命令(出于安全原因,密码被隐藏):
加载作业将启动,当我检查日志以查找引发的错误时,如下所示:
=======================================================================================
db_migrate started on 2018-07-27 07:44:20
Parameters: -logdir /mnt/clientdir/clienthome/db2inst1/logs/db_migrate -sdb BACC_DEV_STGPWRPT_SDFDM -tdb BLUDB_24 -shost dstbld-pda02.bld.dst.ibm.com -suser h16720 -tuser bluadmin -spassword ****** -tpassword ****** -sschema POTINA -tables PO_FACT PRODUCT_DIMENSION CUSTOMER_DIMENSION
Migrating dstbld-pda02.bld.dst.ibm.com:BACC_DEV_STGPWRPT_SDFDM --> localhost:BLUDB_24 (dashdb-txn-flex-yp-dal09-734.services.dal.bluemix.net/50001/BLUDB SSL)
Source Full Schema Enabled: TRUE
Source System Lettercase : UPPERCASE
Data Format : ascii
Log Directory : /mnt/clientdir/clienthome/db2inst1/logs/db_migrate/db_migrate.20180727_074340.7133
Log File : /mnt/clientdir/clienthome/db2inst1/logs/db_migrate/db_migrate.20180727_074340.7133/db_migrate.output
Initiated From: linuxkit-025000000001
Top Level PID : 7133
SOURCE Version: NPS 7.2 Unloaded Via: exttab # of Dataslices: 240
TARGET Version: v11.1.3.3 Loaded Via: exttab # of Dataslices: 1
Script version: 1.0.0.1008.[20180418_132854] [CHANGES: BUG355]
=======================================================================================
Migrating the table: "POTINA"."PO_FACT"
.....processing table 1 of 3
.....using target table "POTINA"."PO_FACT"
.....migration process started at 2018-07-27 07:44:38
.....estimated # of records 5,096,960
.....load starting ( thread 1 of 4 )
.....waiting on load ( thread 2 of 4 )
.....load starting ( thread 2 of 4 )
.....load starting ( thread 3 of 4 )
.....load starting ( thread 4 of 4 )
.....unloading data ( thread 1 of 4 )
.....unloading data ( thread 2 of 4 )
.....unloading data ( thread 3 of 4 )
.....unloading data ( thread 4 of 4 )
ERROR: The load operation error
ERROR: The load operation error
ERROR: See logs: /mnt/clientdir/clienthome/db2inst1/logs/db_migrate/db_migrate.20180727_074340.7133/POTINA.PO_FACT_3.load
ERROR: The load operation error
ERROR: See logs: /mnt/clientdir/clienthome/db2inst1/logs/db_migrate/db_migrate.20180727_074340.7133/POTINA.PO_FACT_4.load
ERROR: The load operation error
ERROR: See logs: /mnt/clientdir/clienthome/db2inst1/logs/db_migrate/db_migrate.20180727_074340.7133/POTINA.PO_FACT_1.load
ERROR: See logs: /mnt/clientdir/clienthome/db2inst1/logs/db_migrate/db_migrate.20180727_074340.7133/POTINA.PO_FACT_2.load
ERROR: /opt/ibm/migration_tools/db_toolkit/db_extTab.sh issue, see logs: POTINA.PO_FACT_3.unload
ERROR: /opt/ibm/migration_tools/db_toolkit/db_extTab.sh issue, see logs: POTINA.PO_FACT_4.unload
ERROR: /opt/ibm/migration_tools/db_toolkit/db_extTab.sh issue, see logs: POTINA.PO_FACT_2.unload
ERROR: /opt/ibm/migration_tools/db_toolkit/db_extTab.sh issue, see logs: POTINA.PO_FACT_1.unload
#####AUTOMATIC TERMINATION: Prior problems were encountered. Aborting the migration of this table.
.....migration aborted TOTAL seconds: 39
.....migration process ended at 2018-07-27 07:45:17
我打开了PO_FACT_1的日志。卸载:
[Db2wh - Client CLI ~]\>
db_migrate.20180727_074340.7133/POTINA.PO_FACT_1.loade/db2inst1/logs/db_migrate/
==> POTINA.PO_FACT [Thread: 1, attempt: 0]
DEBUG: DB EXTERNAL TABLE OPTIONS: Encoding 'INTERNAL' CrInString true CtrlChars true TimeDelim ':' NULLVALUE 'QNZQ' Remotesource 'jdbc' MAXERRORS 1
DEBUG: /opt/ibm/migration_tools/db_toolkit/db_extTab.sh -action load -dbtype DB2 -host dashdb-txn-flex-yp-dal09-734.services.dal.bluemix.net -port 50001 -database BLUDB -schema "POTINA" -table PO_FACT -user bluadmin -password '***' -pipeline /mnt/clientdir/clienthome/db2inst1/logs/db_migrate/db_migrate.20180727_074340.7133/db_migrate.20180727_074340.7133_1.pipe_10 -logname POTINA.PO_FACT_1.load -logpath /mnt/clientdir/clienthome/db2inst1/logs/db_migrate/db_migrate.20180727_074340.7133 -addinoptions Encoding 'INTERNAL' CrInString true CtrlChars true TimeDelim ':' NULLVALUE 'QNZQ' Remotesource 'jdbc' MAXERRORS 1 -certFile /mnt/clientdir/clienthome/db2inst1/logs/db_migrate/db_migrate.20180727_074340.7133/dashdb-txn-flex-yp-dal09-734.services.dal.bluemix.net:50001_20180727_074409.pem >> /mnt/clientdir/clienthome/db2inst1/logs/db_migrate/db_migrate.20180727_074340.7133/db_migrate.20180727_074340.7133_1.dbsql
20180727T07:44:38.361 : [1] SQL: INSERT INTO "POTINA"."PO_FACT" SELECT * FROM EXTERNAL '/mnt/clientdir/clienthome/db2inst1/logs/db_migrate/db_migrate.20180727_074340.7133/db_migrate.20180727_074340.7133_1.pipe_10' USING ( DELIMITER '|' LOGDIR '/mnt/clientdir/clienthome/db2inst1/logs/db_migrate/db_migrate.20180727_074340.7133' EscapeChar '\' Encoding 'INTERNAL' CrInString true CtrlChars true TimeDelim ':' NULLVALUE 'QNZQ' Remotesource 'jdbc' MAXERRORS 1 )
Using user specified non-default DB2 port number: 50001
An unexpected token "EXTERNAL" was found following "FROM". Expected tokens may include: "<space>".. SQLCODE=-104, SQLSTATE=42601, DRIVER=4.23.42
Rows Returned : transfer failed
The /opt/ibm/migration_tools/db_toolkit/db_extTab.sh returned 255
[Db2wh-Client CLI~]\>
db_migrate.20180727_074340.7133/POTINA.PO_FACT_1.loade/db2inst1/logs/db_migrate/
==>POTINA.PO_事实[线程:1,尝试:0]
调试:DB外部表选项:编码“INTERNAL”CrInString true CtrlChars true TimeDelim:“NULLVALUE”QNZQ“Remotesource”jdbc“MAXERRORS 1”
调试:/opt/ibm/migration_tools/db_toolkit/db_extTab.sh-操作加载-dbtype DB2-主机dashdb-txn-flex-yp-dal09-734.services.dal.bluemix.net-端口50001-数据库BLUDB-模式“POTINA”-表PO_FACT-user bluadmin-password'***'-pipeline/mnt/clientdir/clienthome/db2inst1/logs/db_migrate/db_migrate.20180727_074340.7133/db_migrate.20180727_074340.7133_1.pipe_10-logname POTINA.PO_FACT_1.load-logpath/mnt/clientdir/clienthome/db2inst1/db_migrate/db_migrate.20180727_074340.7133-additions编码为“内部”的附加项CrInString true CtrlChars true TimeDelim':'NULLVALUE'QNZQ'Remotesource'jdbc'MAXERRORS 1-certFile/mnt/clientdir/clienthome/db2inst1/logs/db_migrate/db_migrate.20180727_074340.7133/dashdb-txn-flex-yp-dal09-734.services.dal.bluemix.net:50001_20180727_074409.pem>>/mnt/clientdir/clienthome/db2inst1/logs/db_migrate/db_migrate.20180727_074340.7133/db_migrate.20180727_074340.7133_1.dbsql
20180727T07:44:38.361:[1]SQL:插入“POTINA”。“PO_FACT”从外部“/mnt/clientdir/clienthome/db2inst1/logs/db_migrate/db_migrate.20180727_074340.7133/db_migrate.20180727_074340.7133_1.pipe_10”使用(分隔符'|'LOGDIR'/mnt/clientdir/clienthome/db2inst1/logs/db_migrate/db_migrate.20180727_074340.7133'EscapeChar'\'编码'INTERNAL'CrInString true CtrlChars true TimeDelim':'NULLVALUE'QNZQ'Remotesource'jdbc'MAXERRORS 1)
使用用户指定的非默认DB2端口号:50001
在“FROM”之后发现意外的标记“EXTERNAL”。预期的标记可能包括:“…SQLCODE=-104,SQLSTATE=42601,DRIVER=4.23.42”
返回的行:传输失败
/opt/ibm/migration\u tools/db\u toolkit/db\u extTab.sh返回255
你能帮个忙吗?我做错了什么?
提前感谢!
db_migrate
只支持从PDA(又名Netezza)到Db2仓库的迁移。它不支持“普通”Db2、wheter on premise或as Db2 on Cloud。
也就是说,您的目标服务器是DB211.1.3.3,它不支持externaltable
s。这就是为什么您会收到一条意外的令牌“EXTERNAL”
消息
也就是说,来自Db2仓库
touch /mnt/bludata0/scratch/test
db2 "INSERT INTO test SELECT * FROM EXTERNAL '/mnt/bludata0/scratch/test'"
SQL0100W No row was found for FETCH, UPDATE or DELETE; or the result of a
query is an empty table. SQLSTATE=02000
但是来自Db2
db2 "INSERT INTO test SELECT * FROM EXTERNAL '/tmp/test'"
DB21034E The command was processed as an SQL statement because it was not a
valid Command Line Processor command. During SQL processing it returned:
SQL0104N An unexpected token "EXTERNAL" was found following "FROM". Expected
tokens may include: "<space>". SQLSTATE=42601
db2“INSERT-INTO-test-SELECT*FROM-EXTERNAL'/tmp/test'”
DB21034E由于该命令不是SQL语句,因此将其作为SQL语句处理
有效的命令行处理器命令。在SQL处理过程中,它返回:
SQL0104N在“FROM”之后发现意外标记“EXTERNAL”。应为
令牌可以包括:“.SQLSTATE=42601”
db2 "INSERT INTO test SELECT * FROM EXTERNAL '/tmp/test'"
DB21034E The command was processed as an SQL statement because it was not a
valid Command Line Processor command. During SQL processing it returned:
SQL0104N An unexpected token "EXTERNAL" was found following "FROM". Expected
tokens may include: "<space>". SQLSTATE=42601