オルタナティブ・ブログ > Power to the People >

Yagishita's alternative blog

upgrade コマンドのご紹介 #movabletype

»

Movable Type Advent Calendar 2015 第12日のエントリーです。

当初は、「Azure Resource Manager + Ansible でいけているインストール」の紹介を予定していたのですが、見事に永谷さんとぶつかってしまったショックから立ち直れず、諸般の事情もあって、ガッキーのメガネっ娘姿を見ながら書いている私をお赦しください。

お題は、upgrade コマンドの使い方のご紹介です。
upgrade は、tools ディレクトリにあるソフトウェアで、以前のバージョンからのアップグレード処理をするものです。AdminScript(mt.cgi)にアクセスした時点で、データベース内のバージョン情報(スキーマ情報ともいいます)が起動している MT のそれと異なると mt-upgrade.cgi に遷移して、アップグレード処理が実行されます。

mt-upgrade.cgi は便利な反面、環境によっては時間がかかってしまい、CGI のタイムアウトの影響を受けてしまうことがあります。
upgrade は、SSH やリモートデスクトップでサーバーに接続できれば実行できるので、私はこちらを使っています。

さて、upgrade コマンドの使い方は、MT がインストールされているディレクトリにした後、以下のように実行します。

/usr/bin/perl ./tools/upgrade

オプションの指定には、以下のパターンがあります。

  1. 以前のバージョンからアップレードするとき
  2. データベースに影響を与えずに処理をする
  3. 処理する SQL を表示する
  4. 新規のセットアップ

[1]以前のバージョンからアップレードするとき
--quiet --user [システム管理者名]

--user パラメータには、システム管理者のログイン名を入力します。
--quiet パラメータを指定すると、メッセージが何も出力されません。

[2]データベースに影響を与えずに処理をする
--dryrun --user [システム管理者名]

--dryrun パラメータを指定すると、データベースに変更を適用せずに処理を続けます。

[3]処理する SQL を表示する
--sql --user [システム管理者名]

--sql パラメータを指定すると、実行される SQL 文が表示されます。

[4]新規のセットアップ
MT5.2 以降で追加されたモードです。システム管理者と最初のサイトの作成を実行できます。
以下のパラメータを連続して指定してください。

--username [システム管理者名]
--password [パスワード]
--nickname [表示名]
--email [電子メールアドレス]
--use_system_email [指定した電子メールアドレスをシステムのメールアドレスとして利用するか否か 0 or 1]
--preferred_language [使用言語 通常は ja]
--site_name [サイト名]
--site_url [サイト URL]
--site_path [サイトパス]
--site_theme [サイトのテーマ ID ]
--site_timezone [タイムゾーン 通常は 9]
--rebuild [再構築の有無 0|1]

このように、upgrade コマンドをうまく使うと、システム構築を自動化できますね。来年は、永谷さんとぶつからないようにしようっと。

Comment(0)