第十七話 絶対できるから 集中してほら
「慌てず騒がず、エラーログ」
何かが動かないとき、確認すべきはエラーログ。
サーバ系のアプリケーションは、特に動きが目に見えない部分が多いから、エラーログは特に重要よ。
「じゃ、 /var/log/httpd/error_log を開きますかね」
apache のエラーログだ。
「ふんふん……データベース接続でエラー……あ!」
期待通りに記録されていたエラーメッセージを眺めれば、原因は一目瞭然だった。
「そうよね。 Perl と MySQL はインストールしたけど、 Perl から MySQL に接続するドライバインストールしてなかったっけ」
Perl のデータベース接続は、 DBI と呼ばれる Database Interface と DBD と呼ばれる Database Driver を組み合わせて使用する。
DBI は特定のデータベースに依存せず、共通の手法でデータベースに接続するための仕組み。
DBD は、 DBI を通して特定のデータベースに接続するためのドライバ。
接続したいデータベースへの DBD が入っていれば、データベースの種類を意識せずに DBI を通した画一的な手法で簡単にデータベースに接続できるって寸法よ。
そんな訳で、 Perl の MySQL 用の DBD が入っていなかったのが、今回のエラーの原因。
「はい、 yum install perl-DBD-MySQL !」
Perl で使用するライブラリは、通常 cpan と呼ばれる Perl のパッケージ管理の仕組みを通してインストールするんだけど、 CentOS には代表的な Perl のパッケージは CentOS 自体のパッケージとして用意されている。バージョンを気にしなければ、OS に用意されているものを使った方が何かと楽。 yum という CentOS のパッケージ管理システムを通して入れるわけ。
実行すると、依存関係も自動的に解決して、入ってなかった DBI も一緒に入れてくれた。自力で一つ一つインストールするのは相当面倒だから、パッケージ管理システム様々ね。
「さて、と」
インストール完了したところで、ブログの管理画面にアクセスすれば。
「うん、成功!」
あっさりと表示された。
「これで、再構築すれば、データベースを元に各ページを生成してくれるわね」
ブログにはアクセスする度に動的にページを生成して返すタイプと、事前に HTML の形で出力して静的なページにしてしまうタイプとがあるんだけど、あたしが使ってるのは後者のタイプね。
アクセスされる度にデータベースを読んだりページを生成したりするより、静的なページを生成する方がサーバに掛かる負荷は軽いんだけど、
「生成に時間が掛かるのよね……」
ページ数にもよるけど、軽く千ページを越えるブログは、結構な時間を必要とする。
「ま、これでひと段落ね」
新しい缶ジュース(未成年お断り)を開けて、飲みながら待つことにする。
新規登録で充実の読書を
- マイページ
- 読書の状況から作品を自動で分類して簡単に管理できる
- 小説の未読話数がひと目でわかり前回の続きから読める
- フォローしたユーザーの活動を追える
- 通知
- 小説の更新や作者の新作の情報を受け取れる
- 閲覧履歴
- 以前読んだ小説が一覧で見つけやすい
アカウントをお持ちの方はログイン
ビューワー設定
文字サイズ
背景色
フォント
組み方向
機能をオンにすると、画面の下部をタップする度に自動的にスクロールして読み進められます。
応援すると応援コメントも書けます