PHP: 2007年9月アーカイブ
大量データのDELETE/INSERTを処理するバッチ処理をPHPで走らせていたのですが、回数をこなす毎にDBのパフォーマンスが目に見えて落ちてきたため、処理の最後にvacuumを実行することに。
PHPからvacuumをキックする単純な処理なはずが、これがうまく動かない。
PostgreSQL関数経由ではvacuumは実行できないのかとか、いろいろと悩んでいたところ、ようやくあるエラーログに気が付きました。
WARNING: skipping "tablename" --- only table or database owner can vacuum it
要は実行ユーザの権限の問題でした。
wwwユーザにDBの権限を付与したものを使用していたのですが、vacuumを実行できるユーザーは、
・スーパーユーザー
・DBまたはテーブルのオーナー
に限られるいうことのようです。
Simple PHP BlogはPHPベースのブログソフトです。
DBが不要な簡易インストールタイプのブログということで試してみることにしました。
まずソースをダウンロードします。
http://www.simplephpblog.com/(右メニュー「Download」バナーのリンク先から落とせます。)
落としたファイルを解凍したら、サーバにごっそりUP。
ファイルをUPしたURLにブラウザからアクセスするとインストール画面が始まります。
言語選択画面が出ます。「Japanese」を選んでおきます。
「データを格納する3つのフォルダ('config', 'content', and 'images')を自動作成します。」
という確認画面が出ます。そのまま進みます。
※ここで書き込み権限が無いと、パーミッションエラーでフォルダ作成に失敗するようです。
私の場合、とりあえず上記フォルダを手動で作成し、書き込み権限を与えておきました。
フォルダ作成に成功したメッセージが出ます。そのまま進みましょう。
※上の画面はあらかじめフォルダを作成してあったので
「既に存在してます」というメッセージが出ています。
ユーザー名とパスワードの設定をします。入力したら次へ進みます。
パスワードファイルの作成画面が出ます。
password.phpという名前のファイルを作り、
枠内のPHPソースを保存して、サーバ上のconfigディレクトリ下にFTPでUPして下さい。
(ここだけは手動で作業する必要があるようです。)
ログイン画面が出ます。
先ほど登録したユーザー名とパスワードでログインします。
これでインストール完了です。
あとは管理画面から詳細設定やらエントリーを作成してブログを作成できます。
と、このような感じで特に面倒な環境設定をすることもなく、簡単にインストールすることができました。
少し動かしてみましたが今のところ気になる点は、
・更新Pingが効かない(設定は登録されるのですが・・・効いてない?)
・HTML書き出し機能が無い(「静的ページ作成」機能はあるのですが作成したファイルをPHPからインクルードするものです。)
・日付関連のオプション設定が反映されない。(設定ファイルのパーミッションの問題?)
一つ簡単なサイトでお試ししてみてみたいと思います。