読者です 読者をやめる 読者になる 読者になる

鯖memo

主にDebianを使って色々と遊んでみます

PHP、MySQLのインストールと設定 - さくらのVPSでWordPressを動かしてみる(5)

Debian さくらのVPSでWordPress

f:id:log134:20140125122608p:plain

前回はApacheをインストールするところまでやったので、今回はPHPとMySQLをインストールして設定を行います。

インストール方法は今回も「apt-get」を使いパッケージからインストールします。

MySQLをインストール

特に難しい事はなく、下記コマンドで一発です。

# apt-get install mysql-server

MySQLのインストール時にパスワードの設定を求められるので、任意のパスワードを設定しておきましょう。
少しややこしいですが、サーバの「root」とは違うMySQLの接続に使う「root」アカウントのパスワードです。

初期設定

MySQLを使うにあたり、初期設定を行います。
負荷対策などが今後必要になって来る可能性がありますが、とりあえず動く状態にします。

# mysql_secure_installation

このコマンドを実行すると下記の対話形式プロンプトが現れますので、内容にそってY/nを入力します。
基本的には全部YでOKなんですが、Debianの場合、MySQLのrootアカウントのパスワードはインストール時に設定してあるのでここでは特に変更する必要はありません。

NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MySQL
      SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!


In order to log into MySQL to secure it, we'll need the current
password for the root user.  If you've just installed MySQL, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.

Enter current password for root (enter for none): 
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
Enter current password for root (enter for none): 
OK, successfully used password, moving on...

Setting the root password ensures that nobody can log into the MySQL
root user without the proper authorisation.

You already have a root password set, so you can safely answer 'n'.

Change the root password? [Y/n] n
 ... skipping.

By default, a MySQL installation has an anonymous user, allowing anyone
to log into MySQL without having to have a user account created for
them.  This is intended only for testing, and to make the installation
go a bit smoother.  You should remove them before moving into a
production environment.

Remove anonymous users? [Y/n] Y
 ... Success!

Normally, root should only be allowed to connect from 'localhost'.  This
ensures that someone cannot guess at the root password from the network.

Disallow root login remotely? [Y/n] Y
 ... Success!

By default, MySQL comes with a database named 'test' that anyone can
access.  This is also intended only for testing, and should be removed
before moving into a production environment.

Remove test database and access to it? [Y/n] Y
 - Dropping test database...
ERROR 1008 (HY000) at line 1: Can't drop database 'test'; database doesn't exist
 ... Failed!  Not critical, keep moving...
 - Removing privileges on test database...
 ... Success!

Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.

Reload privilege tables now? [Y/n] Y
 ... Success!

Cleaning up...



All done!  If you've completed all of the above steps, your MySQL
installation should now be secure.

Thanks for using MySQL!

何をしたかと言いますと、rootでの外部からの接続を禁止して、不要なユーザーとデータベースを削除しています。

WordPress用のデータベースを作成する

MySQLに接続します。
パスワードの入力を求められますので、設定したMySQLのrootアカウントのパスワードを入力します。

# mysql -u root -p

下記のようにデータベースとそのデータベースに接続するユーザーを作成します。
(データベース名、ユーザー名、パスワードはお好きなものに変更して下さい)

mysql> create database wpdb;
Query OK, 1 row affected (0.00 sec)

mysql> grant all on wpdb.* to 'USER_NAME'@'localhost' identified by 'USER_PASS';
Query OK, 0 rows affected (0.00 sec)

mysql> quit

wpdbというデータベースを作成しました。
このデータベースに、USER_NAMEとUSER_PASSで接続可能な状態になりました。
この情報はあとでWordPressのインストール時に必要になります。

PHPのインストール

WordPressはPHPというプログラミング言語で出来ているので、PHPをインストールしないとサーバ上で動きません。
いつものようにインストール自体は簡単です。

# apt-get install php5 php5-mysql php5-gd

「php5-mysql」はPHPでMySQLへ接続するために必要なモジュールです。
これがないと下記の様なエラーが出て、WordPressを使う事ができません。

お使いのサーバーの PHP では WordPress に必要な MySQL 拡張を利用できないようです。

「php5-gd」も同様でこれがないと、下記エラーが発生し画像のアップロードが行えません。
PHPで画像を扱うモジュールです。サムネイルなどをPHPで作成するとき等に使われます。

画像を処理できませんでした。もう一度お試しください。

以上でPHPのインストールは完了*1です。
次回はいよいよWordPress本体のインストールです。

いちばんやさしい WordPress の教本 人気講師が教える本格Webサイトの作り方

いちばんやさしい WordPress の教本 人気講師が教える本格Webサイトの作り方

*1:Wordpressを使ってくうちに他にも必要なモジュールなどがあるのかもしれませんが、今の段階で自分確認できているのここまでです