さくら借りた3

続いて必要なものを入れていくよ!
ApachePHPMySQLは要るよね!
それでは進めよう。

Apacheを入れる

SSHでサーバーに接続後、
rootになって

yum install httpd

としてApacheをインストールする。
続いて起動。

/etc/rc.d/init.d/httpd start

いちいち立ち上げなくてもいいように自動起動をonにしておく。
これってデーモンとは違うのかな?
よくわからないので、
サーバー管理のことをもっと知らなきゃなー。
chkconfigコマンド

/sbin/chkconfig httpd on

↑のようにonにしておきます。

PHPを入れる

次はPHPですね!
ubuntuは最初からPHPが入っているので、
PHPのインストール作業って新鮮だなー。
CentOSは標準のパッケージ管理ではPHP5.1系がインストールされるらしいので、
5.3系を入れるためにレポジトリを追加する。

wget http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-4.noarch.rpm
wget http://rpms.famillecollet.com/el5.i386/remi-release-5-8.el5.remi.noarch.rpm
rpm -Uvh remi-release-5-8.el5.remi.noarch.rpm epel-release-5-4.noarch.rpm

remiを有効にする、
とのことだけどこのへんは意味がわからない。
次からはこのレポジトリを使うってことかな。

emacs /etc/yum.repos.d/remi.repo

を開いて、
以下のように

enabled=0 ←を1に変更する

として保存。
やっとPHPのインストール。

yum install php-devel php-mbstring php-mysql php-gd php-mcrypt php-pear

インストールが終わるまで待ちましょう!
完了したらおもむろに、

php -v

と入力して、
ちゃんとバージョンが表示されればOK。
よかった!
Apacheを再起動してPHPを有効にしとく。

/etc/rc.d/init.d/httpd restart
MySQLを入れる

次はMySQL
MySQLも欲しいよね。

yum -y install mysql-server

今更だけど-yオプションをつけると、
インストール時の確認をスキップ(yesということになる)できるらしい。
yumコマンドでよく利用するコマンド
次は設定へ。

emacs /etc/my.cnf

以下を追記する。

default-character-set=utf8
skip-character-set-client-handshake

[client]
default-character-set=utf8
 
[mysql]
default-character-set=utf8
 
[mysqldump]
default-character-set=utf8

エンコーディングの違いによる脆弱性を回避するため、
MySQLで扱うエンコーディングはutf8にする。
ぼくがPDOを採用しなかったわけ(Shift_JISによるSQLインジェクション) - 徳丸浩の日記
↑では

PHP5.3.7の正式版が出れば、この問題は解決すると思われます。

と書いてあるけどUnicodeの方が文字化けは少なそうなのでutf8にしておこう。
MySQLApacheのように自動起動するように設定する。

/sbin/chkconfig mysqld on

次にMySQLを起動させる。

/etc/rc.d/init.d/mysqld start

とやったらエラーがでた!

MySQL Daemon failed to start.

あぁ、悲しい!
ログを見てみるとmysql.sockがない、
とのこと。
調べると確かにない。
本当なら、

/var/lib/mysql/

にあるはずなのに。
MySQLが再起動できなくなった - Slow Dance
「MySQL Daemon failed to start.」って出た
↑かなとも思ったけど違う。
んー、と悩んで探したら同じ人を見つけた!
さくらVPS mysqlが起動できない - プログラム開発 作業メモ
エラー文がまったく一緒。
上記を参考にして一度MySQLを削除して、
再度インストールした。

/etc/rc.d/init.d/mysqld start

とやってうまく起動できた!やったね!
続いてrootユーザーのパスワードを設定する。
インストール後の状態ではrootユーザーのパスワードが空なので、
誰でもrootユーザーとしてMySQLにログインできる。
これは危ないのでパスワードを設定しておく。
MySQL :: MySQL 5.1 リファレンスマニュアル :: 2.10.3 最初の MySQL アカウントの確保

mysqladmin -u root password パスワード
mysqladmin -u root -h ホスト名 password パスワード

とやってパスワードを設定する。

mysql -u root -p

と入れて、
先ほどのパスワードでログインができたら完了!