こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

mysqldumpの使い方がイマイチ分かりません。

こんにちは。よろしくおねがいします。

MySQLからMSSQLServerへデータを移すなどという事をやっているのですが、途中、詰まっています。
助言いただける方がいましたら、どうかよろしくおねがいしますm(_ _)m

【環境】
移行元:
Windows2003Server
MySQL5.1

移行先:
Windows2003Server
MSSQLServer2000


【やること】
MySQLにあるデータをMSSQLServerに移行する。


【方法】
1.移行元で、コマンドプロンプト起動。以下のコマンドを打ち込み、ファイルにする。

mysqldump
-u ユーザ名 -pパスワード
--default-character-set=binary
--tab=D:/tmp
--fields-terminated-by=,
--fields-optionally-enclosed-by=\"
--lines-terminated-by="\r\n"
DB名

2.ファイルをテキストエディタで開き、「UTF8→SJIS」に変換し、保存しなおす。
3.ファイルを、移行先で、「bcpユーティリティ」を使用して、テーブルに放り込む。


【困っているところ】
mysqldumpを実行した後のファイルに、どうしたらいいのか不明なデータが入る。

テーブル構成は
フィールド1:int(auto_increment)
フィールド2:text(utf8_general_ci)

のみです。

phpMyAdmin上で、データの挿入から、フィールド2に対して、「改行を含むデータ」を登録した場合、不明データが入ります。

■登録データ

あああああ
いいいいいいい
ううううう
えええええええ
おおおおおおお

■mysqldumpで作成されるデータ

"あああああ\
いいいいいいい\
ううううう\
えええええええ\
おおおおおおお"


多分、今まで気にしていなかった(Win-MSSQL環境がほとんどなので...)改行コードが~といったところでは無いかとは思っていますが、
いろいろ試していますが解決に至っていません。

解説できる方がいらっしゃいましたら、どうかお力をお貸しいただけると助かりますm(_ _)m



試したこと。

--result-file=file
あたりを使ってみた。
。。。意味なし?


http://dev.mysql.com/doc/refman/5.1/ja/load-data.html
一応、読んで、オプションへの指定を変えて出力して取り込んでみるものの、特に変わらず。。。

投稿日時 - 2012-02-16 15:23:18

QNo.7308667

困ってます

質問者が選んだベストアンサー

こんばんは。

移行するなら、マイグレーションツールが無償で提供されています。
以前使った事がありますが、スムーズに移行できました・・・。
MySQLのサイトのどっかにあります。

投稿日時 - 2012-02-16 19:35:15

お礼

こんばんは。さっそくの回答ありがとうございます。

>>移行するなら

「移行」と書いてしまいましたが、「定時実行」させる必要があるので、データ連携。。。とでも言うんでしょうかね?(汗

MySQL側~を使用した状態でしばらく動かしておき、MSSQLServer側では、データ参照のみさせるような別システムを立ち上げて、その後、なんやらかんやらする。

という話になっているので、
mysqldumpコマンドを、コマンドプロンプト上で定期実行するような、バッチファイルにしてタスクで蹴るか、SQLServerストアドから蹴るか。。。


などという事を考えていました。
(差分。とかも考えましたが、まぁ、そこも何とかなるし、まずは「全データを全とっかえする処理を定時で」と考えています。


>>マイグレーションツールが

楽にできる上に、定時実行なんか出来たりしたら最高なんですけどね(汗
ちょっとそれも出来ないか含め、探してみたいと思います。

ありがとうございました。

投稿日時 - 2012-02-16 20:05:36

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(1)

あなたにオススメの質問