【備忘録】phpMyAdminの設置:webarenaの設定方法 | まいぺんら~い♪ な日々

【備忘録】phpMyAdminの設置:webarenaの設定方法

2012年3月7日、Cent OS 6のことも追記

:これはあくまで自分用の備忘録なので、他の方が見ても参考になるかどうかの保証はできません。


こういった作業、何度かやってる割に、
「あれれ、どうやるんだっけ……」
と度忘れして、その都度あちこち調べたり。
面倒なので、いっそ自分がいつでも見られるところに、やり方をアップしておくと便利と思ったり。

なにはともあれ、webarenaのVPS(ばーちゃる・ぷらいべーと・さーば)には、phpMyAdminが入ってない!
要するに、自分で入れろということ。

これがないと、データベースの管理が非常に困難に!!


●前提作業

まず、サーバへ、SSH接続。

su -
と入力して、パスワードをいれて、管理者権限モードにする。

どうでもいい話だけどね、なんかこの管理者モードにする度に、
ピグレディー倶楽部の合い言葉を言ってる気分になる……笑



●phpMyAdminの設置

○Cent OS 5の場合
以下を入力
(phpのバージョンとかの関係で、使うphpMyAdminはVersion 2.11.11.3にする)

# cd /var/www

# wget http://download.oldapps.com/PHPMyAdmin/phpMyAdmin-2.11.11.3-all-languages.zip?download

# unzip phpMyAdmin-2.11.11.3-all-languages.zip?download

# mv phpMyAdmin-2.11.11.3-all-languages phpMyAdmin

○Cent OS 6の場合
以下を入力。
(phpのバージョンが5.2以上なので、使うphpMyAdminはVersion 3.4.10にする)

# cd /var/www
# wget http://sourceforge.net/projects/phpmyadmin/files/phpMyAdmin/3.4.10.1/phpMyAdmin-3.4.10.1-all-languages.tar.gz
# tar cvf phpMyAdmin211.tar phpMyAdmin

○Cent OS 5と6共通


・設定ファイル phpMyAdmin.conf の編集


# vi /etc/httpd/conf.d/phpMyAdmin.conf

ファイルが開くので、「i」キーを押して、編集できるモードに。

Alias /phpMyAdmin /var/www/phpMyAdmin
<Location /phpMyAdmin>

Order deny,allow

Deny from all

Allow from 127.0.0.1

Allow from xxx.xxx.xx.xxx

</Location>

「xxx.xxx.xx.xxx」の部分は、自分のパソコンのIPアドレスを入れておく。
他に追加したい仲間がいれば、そのIPアドレスも入れると吉。
これで、ここで許可したパソコン以外は「phpMyAdmin」にアクセスできなくなる。

入力したら、一度「esc」キーを押して編集モードから抜ける。
「:wq」と入れてエンター。これで保存&ファイルを閉じる。


・Apache 再起動前のテスト


# /etc/init.d/httpd configtest
と入力

Syntax OK

と出たら、めでたしめでたし。


●データベースの文字コードをあらかじめ指定

データベースを作る時、いちいち文字コードを指定するのも面倒。
なので、

# vi /etc/my.cnf

[client]
default-character-set=utf8

[mysqld]
default-character-set = utf8
skip-character-set-client-handshake
character-set-server = utf8
collation-server = utf8_general_ci
init-connect = SET NAMES utf8

を書き加える。

その後、
mysql -u root -p
でmysqlにログインして、

CREATE DATABASE 作りたいデータベース名;

GRANT ALL ON 作ったデータベース名.* TO データベースのログイン名@localhost IDENTIFIED BY 'パスワード';

これで、作る時にいちいち文字コード指定しなくて済む!


・Apache 再起動

# /etc/init.d/httpd reload
httpd を再読み込み中: [ OK ]

●phpMyAdminへアクセスしてみる

http://【ホスト名】/phpMyAdmin/

でもここで、大抵はこういうエラーが出る。

「mcrypt 拡張をロードできません。PHP の設定を確認してください」

しょうがないので、またSSHでサーバへアクセスして、

# yum -y install php-mcrypt

と打つ。
これでOKだった筈。

●CentOS 6の場合(多分、SL6も同じかも?)

「mcrypt 拡張~」に対して、上記コマンドを打っても何もならない。
よって、以下の手順を。

# rpm -ivh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm

# yum -y install --enablerepo=remi php-mcrypt

# yum --enablerepo=remi,epel,rpmforge install php-mysql

もしかして、一番下の「yum --enablerepo=remi,epel,rpmforge install php-mysql」だけでOKかも?
それだけじゃ駄目だったら、その上の2つも試すといいと思う。

あれこれインストールされるので、「Complete!」となったら、
アパッチをリスタート

#service httpd restart

しかし、これでいざphpMyAdminにログインしようとしたら、
「#2002 - サーバが応答しません(あるいはローカルのMySQLサーバのソケットが正しく設定されていません)」
とか言って、だだをこねられてしまう……。

なので、phpMyAdmin内の「config.inc.php」で、ソケットとやらを正しく設定してあげる。

$cfg['Servers'][$i]['connect_type'] = 'tcp';

という部分で、

$cfg['Servers'][$i]['connect_type'] = 'socket';
$cfg['Servers'][$i]['socket'] = '/var/lib/mysql/mysql.sock';

としてあげる。
socketのパスは環境でそれぞれ違うと思うので、調べるべし。

#vi /etc/my.cnf

で、「my.cnf」の中に書かれているので。
ついでに、「my.cnf」で、[mysqld]の項目の中の「default-character-set = utf8」を消しておく。(CentOS 5.5以上の場合)
なんでも「character-set-server = utf8」じゃないと受け付けないみたいなので。

これで

#service mysqld start

でMySQLが起動してくれたら、OK。

これで片がつく。

他にも何かファイルをいじった気もするが、これで駄目なら、未来の自分よ、
また必死に調べて直して、この記事にそれを書いておくれ。(無責任)


●インポートの最大サイズを増やしたい場合

っていうか……。
新しいデータベースを作るならともかく、既存のものを引っ越しする場合、
大抵は2MB以上のサイズになってるし……。
でも設定では2MBが上限だし。

なので、無理矢理かえる!!

# vi /etc/php.ini

で、
upload_max_filesize
post_max_size

の2つの数値を変更する。
ただし、memory_limitは上記2つより大きい数値であること

その後、
# service httpd restart
でアパッチを再起動すればOK。


本当は、こんなことするのは推奨できないけど。
もっと他のやり方があるけど(uploadフォルダを作って、そこからさらに移転させるやり方)、
phpMyAdmin2.11.11.3だと出来ないっぽい。

以上!!