- ベストアンサー
Oracleで構築されているDBをMySQLで再構築する場合の問題点
現在OracleでDBが構築されているシステムの再構築を行うのですが、その際DBをMySQLに変更したいという要望がありました。 DBの規模等はそれほど大規模なものではないのですが、それ以外に何か検討されるべきものはあるでしょうか? 例えばデータ型などでOracleで扱っていてMySQLでは対応できないものなどはありますでしょうか?
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
1の方の回答に補足ですが、 OracleとMySQLではトランザクションの管理レベルが ことなるはずです。 それからMySQLにはシーケンスがありません。 参照系のDBならともかく、トランザクション系のDB であれば、MySQLへの移行はお勧めできないと思います。
その他の回答 (1)
- mi-si
- ベストアンサー率35% (200/567)
ビューやシノニム、PL/SQLなどの機能は全滅ですね。 オブジェクト型も全滅。 VARCHAR2型はVARCHARもしくはTEXT型に変更する必要があります。NUMBER型もその他置き換える必要が出てくると思います。OracleのDATE型は、MySQLではDATETIME型です。関数系もかなり異なるので、テーブル設計やQueryの時点でかなり置き換えが必要になります。後、MySQLのBLOB型は、OracleのLONG RAWに近い型の様です。 また、数字型と可変文字列においてサポート出来る桁数と文字数が異なります。 その他Indexや複合Primary Keyを使っている場合も制限がかかる可能性があります。 後は、MySQLをトランザクションモードで構築しないとトランザクション管理が出来ません。 ユーザーの概念はありますが、スキーマの概念が無いので注意が必要です。テーブルの管理の単位はデータベースです。
お礼
丁寧なご回答ありがとうございます。 データ型はすぐ想像ついたのですが、他にも色々課題がありそうですね。 参考にさせていただきます。
お礼
ご回答ありがとうございます。 ソースコードを見てみたところSEQUENCEは使われていないようです。 トランザクションの管理レベルについては、かなり詳細に調べてみないとなんとも言えないですねえ。 ご意見ありがとうございます。 DBMSの変更にはかなり詳細な検討が必要だということがよくわかりました。