で、ググると
MySQL Migration Toolkit
OracleからMySQLへのデータ移行手順
でサクサクとデータ移行できる模様。
んでまぁやってみたらテーブルはできているのですが、データは入ってない。
なぜに?と思ったら文字コードの不具合であった。
んでいろいろまとめ。
MySQLの文字コード
mysql> show variables like 'character_set%';
+--------------------------+---------------------------------------------------------+
| Variable_name | Value |
+--------------------------+---------------------------------------------------------+
| character_set_client | cp932 |
| character_set_connection | cp932 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | cp932 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | C:\Program Files\MySQL\MySQL Server 5.7\share\charsets\ |
+--------------------------+---------------------------------------------------------+
8 rows in set, 1 warning (0.05 sec)
Oracleの文字コード
SQL> SELECT VALUE FROM NLS_DATABASE_PARAMETERS
2 WHERE PARAMETER='NLS_CHARACTERSET'
3 ;
VALUE
--------------------------------------------------------------------------------
JA16SJIS
MySQL Migration Toolkit注意点
1.javaインストール
javaloaderの部分をOKにする場合、javaの5を入れないといけなかった。Toolkitのバージョンにもよるのでしょうが、じゃぁ最新版のjava8入たれ!で駄目だったのでやっぱりjava5が必要だった。
具体的に入れたファイルはjre-1_5_0_22-windows-i586-p.exe
2.Orcale接続する為に「ojdbc14.jar」の取得
このoracle接続のダイアログが出ずにどうしたもんかと。で、ここでojdbc14.jarをコンボボックスから読み込ませるとできました。
ojdbc14.jarはググってもってきます。つーかデフォルトで入れとけと思うが。
3.文字コードの設定
ここ!ここの画面で文字コードを設定する!!
Oracleの方をマルチランゲージにしてテキストボックスに文字コードを記入(今思うと下のユーザデファインを選択するんじゃねーか?)
MySQLの方はマルチランゲージにして・・・utf8にしかできないやんけ。
もしかしたらMySQLのDBの文字コードをいじってしまうとどうにもならんかったかもしれない。
んであとはNEXT実行、NEXT実行で完了。
成功!
中身は見せられないけどちゃんと成功してましたよ!
最初は初期ユーザのsccotとかに小さいレコード作って試す方がいいかもね。
0 件のコメント:
コメントを投稿