728x90

캐교님 | 백업 | 2013-03-25 19:21:27


안녕하세요, 

버전 설치가 잘못되어 db2 버전을 내리려고 합니다.
9.5에서 저장중인 데이터를 backup/restore 명령어를 사용하여 옮기려고 했는데

SQL2514N The RESTORE was not successful. The backup used to restore the database contained a database with a release number that is not compatible with the installed version of the database manager.

에러를 내면서 안되네요..
디비투는 많이 사용하여 보지 않아서 빨리 해결을 해야하는데 막막합니다.
고수 여러분들의 도움을 받고 싶습니다.


감사합니다. ㅠㅠ




pajama 2013-03-25 20:32:20
안녕하세요. DB2 9.5와 9.1의 메타테이블 방식이 다르기 때문에 backup/restore 방식으로는 데이터이동이 안됩니다. 데이터를 옮기시려면 테이블별로 export/import 작업을 해주셔야 합니다.


캐교 2013-03-25 22:21:51
db2look -d IFM -e -x -l -z db2inst1 -cor -nofed -noview -o db2look.ddl 으로 ddl을 생성하여 
9.1에서 db2 -tvf db2look.ddl 명령어로 실행해봤는데, 테이블의 절반만 생성되네요.. 문법오류가 나는것 같습니다.

CREATE TABLE "DB2INST4"."IM_USER_INFO" ( "USER_ID" VARCHAR(30) NOT NULL , "ACL_ID" DECFLOAT(16) NOT NULL , "USER_NAME" VARCHAR(32) , "REG_DATE" TIMESTAMP(0) , "STATUS" VARCHAR(3) WITH DEFAULT 'O' , "USER_PASSWD" VARCHAR(16) , "USER_HAND_PHONE" VARCHAR(512) , "USER_TEL" VARCHAR(16) , "USER_EMAIL" VARCHAR(30) , "USER_DEPT" VARCHAR(30) , "USER_POSITION" VARCHAR(30) , "USER_MONITOR" VARCHAR(256) ) IN "USERSPACE1" 

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 "DECFLOAT" was found following "NOT NULL , 
"ACL_ID"". Expected tokens may include: "DEC". SQLSTATE=42601

데이터는 db2move를 통해서 export 받으려고 합니다.
뭔가 데이터 유지가 잘 안되는것같은데 export/import 방법이 또 있을까요??


pajama 2013-03-26 00:20:18
ACL_ID 컬럼의 DECFLOAT 데이터 타입이 9.1버전에서는 지원되지 않습니다. DECIMAL, FLOAT등 다른 데이터타입으로 변경해야 합니다.
그리고 REG_DATE 컬럼또한 TIMESTAMP(0)으로 쓰였는데 역시 9.1버전에서 지원하지 않습니다. TIMESTAMP로 바꿔야합니다.

다른 테이블도 이러한 버전차이로 인한 문법차이로 생성되지 않았을 가능성이 커보입니다.

냉정과열정사이. 2013-03-27 16:52:05
다른 데이터무브 방법
1.Cursor load
2.federation
3.파일로 떨군 후의 익스포트 load

DDL이 잘 안떠진 이유는 db2look문장이 조금 이상하지 않나 생각됩니다.

냉정과열정사이. 2013-03-27 16:53:23
-z: Schema name: If -z and -a are both specified then -z will be ignored
Schema name is ignored for the Federated Section

헬프에 이렇게 되어 있고, db2look -d IFM -e -x -l -z db2inst1 -cor -nofed -noview -o db2look.ddl게 명령어를 쳤는데

"DB2INST4"."IM_USER_INFO" 이 테이블의 DDL이 떠졌나요?



728x90

+ Recent posts