Movable Type CMSプラットフォーム Movable Type
ドキュメントサイト

Movable Type 4 ManualMovable Type 4 マニュアル

Berkeley DB から SQL データベースへの移行

最終更新日: 2017.10.06

Berkeley DB を使った既存の環境を、MySQL, PostgreSQL, SQLiteを使った環境に移行する方法は、次のとおりです。

Berkeley DB を使用した Movable Type 3.x から、Movable Type 4 にアップグレードする場合、Movable Type 3.x 上で以下の手順でデータベースの移行作業を行ったあと、Movable Type 4 へのアップグレードを行ってください。

  1. データベースファイルのバックアップ
  2. 移行先のデータベースに対応した Perl モジュールをインストール
  3. 移行先のデータベースに対応した環境を設定
  4. 移行スクリプトを実行
  5. Movable Type のアップグレード

データベースファイルのバックアップ

移行の作業中、万が一に失敗したときでも復旧できるように、データベースファイルを次のようにバックアップします。FTP ソフトでサーバーにアクセスしてデータベースディレクトリごとローカルに保存するか、以下のようなコマンドでバックアップを行います。

$ tar -zcvf backupdb.tar.gz /var/www/mt-db/*

移行先のデータベースに対応した Perl モジュールをインストール

mt-check.cgi にアクセスし、システム情報の確認を行います。移行先のデータベースに対応した Perl モジュールがインストールされていない場合はインストールします。

  • DBI (すべてのデータベースで必要な共通モジュール)
  • DBD::mysql (MySQLを利用する場合に必要なモジュール)
  • DBD::Pg (PostgreSQLを利用する場合に必要なモジュール)
  • DBD::SQLite (SQLiteバージョン3を利用する場合に必要なモジュール)
  • DBD::SQLite2 (SQLiteバージョン2を利用する場合に必要なモジュール)

移行先のデータベースに対応した環境を設定

移行先のデータベースに対応した環境を設定します。

移行先データベースの設定を行う際に、使用中の Berkeley DB の設定を削除しないでください。

My SQL を例にすると以下のようになります (設定内容はサンプル)

# Berkeley DB (before)
DataSource /var/www/mt-db

# MySQL (after)
ObjectDriver DBI::mysql
Database mt
DBUser mtuser
DBPassword mtpasswd
DBHost mysql.example.com

移行スクリプトを実行

データベースの移行スクリプト mt-db2sql.cgi を実行します。たとえば、CGIPath を http://www.example.com/cgi-bin/mt/ に設定している場合、mt-db2sql.cgi は次の URL で実行できます。

http://www.example.com/cgi-bin/mt/mt-db2sql.cgi

データベースの移行が正常に終了した場合、次のメッセージが画面に表示されます。

Done copying data from Berkeley DB to SQL database! All went well.

Movable Type 4 へのアップグレード

既存の環境でデータベースのアップグレードを行った後、Movable Type 4 にアップグレードします。アップグレードの手順は既存環境からのアップグレードを参照してください。