- 追加された行はこのように表示されます。
- 削除された行は
このように表示されます。
!!!DB2 エクスポート、インポートで文字化け
[DB2]
[DB2]{category 文字化け}
*https://www-304.ibm.com/support/docview.wss?uid=swg21504151
!!問題
*EXPORT および IMPORT を使ってデータを移動させると、IMPORT 先で文字化けが発生することがある。
*EXPORT および IMPORT は、データベース・コード・ページと、コマンド行プロセッサー (CLP) のコード・ページの間で文字コード変換が行われるため、これをあわせる必要がある。
!!対処
!EXPORT 元のデータベースと IMPORT 先のデータベースのコード・ページが一致している場合
*EXPORT および IMPORT を実行する CLP のコード・ページを、データベース・コード・ページと一致させます。
!EXPORT 元のデータベースと IMPORT 先のデータベースのコード・ページが一致しない場合
*変換が一度だけになるように設定します。たとえば EXPORT で宛先データベースのコード・ページに変換し、IMPORT は無変換で行います。
!EXPORT 元のデータベースより IMPORT 先のデータベースの文字集合が小さい場合
*EXPORT 元と同じ、もしくはより大きい文字集合をサポートするデータベースに IMPORT します。JP) です。
*日本語をサポートする主なコード・ページは、文字集合の大きい順に 1208 (UTF-8) > 943 (SJIS) > 954 (EUC-JP)
!!注意
""ローカルPCのIBM Data Studio を利用し、サーバーのDBのエクスポート、インポートを行うと、クライアントの設定に依存するためか、やはり文字化けが発生する。ローカルPCの IBM Data Studio はコマンドの生成に利用し、上記の設定を行った後にコマンドの実行は、各サーバーで直接行うのが吉。
!!Windows環境での例
*UTF-8からUTF-8へ移行する例
!DB2コードページの確認
C:\IBM\SQLLIB\BIN>db2 get db cfg for [データベース名] | find "コード・ページ"
データベース・コード・ページ = 1208
!DB2コードページを環境変数に設定
C:\IBM\SQLLIB\BIN>SET DB2CODEPAGE=1208
!コマンドプロンプト(CLP自体)のコードページをUTF-8に設定
C:\IBM\SQLLIB\BIN>chcp 65001
!EXPORT/IMPORT の実施
C:\IBM\SQLLIB\BIN>db2
connect to [データベース名]
export ...