【備忘録】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だと出来ないっぽい。
以上!!
注:これはあくまで自分用の備忘録なので、他の方が見ても参考になるかどうかの保証はできません。
こういった作業、何度かやってる割に、
「あれれ、どうやるんだっけ……」
と度忘れして、その都度あちこち調べたり。
面倒なので、いっそ自分がいつでも見られるところに、やり方をアップしておくと便利と思ったり。
なにはともあれ、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だと出来ないっぽい。
以上!!