岡山県瀬戸内市で太陽光発電と岡山市で不動産運用とその他の運用で生活しています。私の経験などを公開しています。

太陽光発電とその他の不労収入で南国ロングステイを

PCTips

MS-SQL(SQLserver )からMySQLへDB移行とアプリケーションの対応

MS-SQL(SQL Server)からMySQLへDB移行とアプリケーションの対応

仕事で使っているRDBをMS-SQLからMySQLへ移行しました。
同時にアプリケーションの方も
MS-SQLからMySQLへの変更をしていきました。
これで古いPCからMac miniへ
完全に移行が出来るようになります。

MS-SQL(SQL Server)からMySQLへDB移行

MS-SQL(SQL Server)から
MySQLへDBを移行しました。
移行は今回きりの作業なので、
GUIツールも使いました。

当初は、MS-SQL(SQL Server)から
MySQLへ移行するにあたって
楽に移行が出来る方法を
考えたり試してみたりしました。
考えた方法は下記の通りです。

  • Management StudioにMySQLへのリンクサーバを設定させてSQL Server インポートおよびエクスポート ウィザードを使って転送する
  • スキーマを出力してMySQL用に手動で編集してGUIツールでデータを転送をする
  • MySQLの方でテーブルを手動で作成、データはCSV出力後に自作プログラムでデータを追加

Management StudioにMySQLへのリンクサーバを設定させてSQL Server インポートおよびエクスポート ウィザードを使って転送する

Management StudioにMySQLへのリンクサーバを追加する事はできました。
SQLも実行してデータをManagement Studioに表示はできましたが、
SQL ServerからMySQLへのデータ転送が
転送用のスキーマが無いか
そんな感じのメッセージが
出てMySQLへ転送はできませんでした。

MySQLの方でテーブルを手動で作成、データはCSV出力後に自作プログラムでデータを追加

この方法だとできますが、
自作する物が多く時間がかかるので
これは最後の手段にしました。

スキーマを出力してMySQL用に手動で編集してGUIツールでデータを転送をする

今回の以降はこのやり方で移行しました。
Management Studioで移行したい
テーブルのCREATE TABLE文を出力させて
MySQLに無い型をMySQLの対応する型に変更して
MySQLでCREATE TABLEを
実行してテーブルを作成しました。

Management Studioで移行する
テーブルのデータをCSVファイルに
エクスポートします。

HeidiSQLでMySQL接続をして、
エクスポートしたCSVファイルを
MySQLへインポートします。

私の使っているDBは
データも少なく特殊な型を
使っていなかったので
これで移行できました。

 
 
スポンサーリンク


 
 

DBに合わせてアプリケーションも変更

DBが変わるとDBに合わせて
アプリケーションの
変更も必要になります。
DBのアクセスする箇所と
SQL構文の一部を変更する
必要が有りましたが、
それほどの変更では
有りませんでした。

最後はテスト

変更した内容でアプリケーションが
動作するかテストをしていきます。
変更前のRDBとアプリケーションと
変更後のRDBとアプリケーションで
更新・追加しているデータが
同じ値に変更されているか数週間
テストをしていきました。
テストではエラーは有りません。

テストも上手くいったので
これで仕事関係の事も
Mac miniの方で
作業を行う事ができます。
近いうちのPCの交換を
する予定です。
古いPCはそれなりのスペックのPCです。
OSのブートに失敗するのと
急に電源が落ちなければ
スペック的には現役続行可能です。
入れ替えた後は
再インストールして
予備機に回そうかと思います。

 
 
スポンサーリンク


 
 

-PCTips

Copyright© 太陽光発電とその他の不労収入で南国ロングステイを , 2024 All Rights Reserved.