目次
DB2 エクスポート、インポートで文字化け
問題
- EXPORT および IMPORT を使ってデータを移動させると、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 ...
YAGI Hiroto (piroto@a-net.email.ne.jp)
twitter http://twitter.com/pppiroto
Copyright© 矢木 浩人 All Rights Reserved.