先日、「レンタルサーバで複数のMTをインストールする方法」という記事を書きましたが、これはDBとして MySQL か PostgreSQL を使用している場合の例でした。
そこで SQLite を使用する場合も書いておきます。
MySQL や PostgreSQL と同様の方法も選択できますが、通常はもっと簡単に済んでしまいます。
(対象:MT3.2以上(3.3対応)、SQLite使用の場合)
方法1. DBファイルを別個にする
SQLiteの場合、mt-config.cgi に使用するDBファイルを指定します。
これがインストールするMTごとに別個であれば、テーブル名がかぶる心配がないので、MTのソースをハックする必要はありません。
具体的には、一番簡単な方法として、mt-config.cgi にファイル名だけを指定すればOK:
##### SQLITE #####
ObjectDriver DBI::sqlite
Database sqlitedb
こうすれば「sqlitedb」というファイルはMTインストール先ディレクトリの直下に生成されるため、複数のMTごとに固有のものになります。
もちろん、フルパスで指定して明示的に区別してもOKです:
##### SQLITE #####
ObjectDriver DBI::sqlite
Database /home/hoge/db/sqlitedb1
#↑sqlitedb1をsqlitedb2,sqlitedb3等々...
方法2. DBファイルを一つにする
何らかの理由で、同じDBファイルを使用したい場合というのもあるかもしれません。
その場合は、mt-config.cgi ファイルへの指定は全く同じパスにして、MySQL や PostgreSQL のように「lib/MT/ObjectDriver/DBI/sqlite.pm」を編集して、テーブル名(のprefix)を変更する必要があります。
詳細は、レンタルサーバで複数のMTをインストールする方法を参照してください。
※置換し忘れに注意。