MySQLとphpMyAdminをインストールする。
サーバのホスト名がwww.example.comとした場合にhttp://www.example.com/phpMyAdmin/
というURLでphpMyAdminへアクセスできるように設定する。
MySQLをインストールしてmysql_secure_installation
コマンドで不要な匿名ユーザやテストデータベースを削除し、rootのパスワードをMkWBmX25rPYk
として設定する。
yum -y install mysql-server chkconfig mysqld on chkconfig --list mysqld ---------------------------------------------------------------------- mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off ---------------------------------------------------------------------- /etc/rc.d/init.d/mysqld start mysql_secure_installation ---------------------------------------------------------------------- Enter current password for root (enter for none): (まだパスワードを設定していないのでEnterキーを押す) Set root password? [Y/n] y New password: MkWBmX25rPYk (パスワード入力) Re-enter new password: MkWBmX25rPYk (パスワード入力) Remove anonymous users? [Y/n] y Disallow root login remotely? [Y/n] y Remove test database and access to it? [Y/n] y Reload privilege tables now? [Y/n] y ----------------------------------------------------------------------
あとの設定はCentOS5と6の場合で内容が異なる。
CentOS 6の場合
使用する文字コードをUTF-8に設定する。
vi /etc/my.cnf -------------------------------------------------------------- [mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock user=mysql # Disabling symbolic-links is recommended to prevent assorted security risks symbolic-links=0 character-set-server=utf8 skip-character-set-client-handshake [mysqld_safe] log-error=/var/log/mysqld.log pid-file=/var/run/mysqld/mysqld.pid -------------------------------------------------------------- /etc/rc.d/init.d/mysqld restart
文字コードがUTF-8になっているか確認する。
mysql -u root -p mysql> show variables like 'char%'; +--------------------------+----------------------------+ | Variable_name | Value | +--------------------------+----------------------------+ | character_set_client | utf8 | | character_set_connection | utf8 | | character_set_database | utf8 | | character_set_filesystem | binary | | character_set_results | utf8 | | character_set_server | utf8 | | character_set_system | utf8 | | character_sets_dir | /usr/share/mysql/charsets/ | +--------------------------+----------------------------+ 8 rows in set (0.00 sec) mysql> exit Bye
phpMyAdminをダウンロードおよび設置とApacheの設定を行う。Apacheは既にインストール済みであると想定している。
最新版のphpMyAdminは本家サイトで確認する。
CentOS6でインストールされるMySQLのバージョンは5.1系ですが、phpMyAdmin4.2系以降はMySQL5.5移行のバージョンを対象としているため利用できません。phpMyAdmin4.0系の最新版の利用を検討して下さい。
cd /usr/local/src/ wget http://downloads.sourceforge.net/project/phpmyadmin/phpMyAdmin/4.0.10.9/phpMyAdmin-4.0.10.9-all-languages.tar.gz tar zxvf phpMyAdmin-4.0.10.9-all-languages.tar.gz mv phpMyAdmin-4.0.10.9-all-languages /var/www/phpMyAdmin chown -R root:apache /var/www/phpMyAdmin/ vi /etc/httpd/conf.d/phpmyadmin.conf ------------------------------------------------------ Alias /phpMyAdmin "/var/www/phpMyAdmin" <Directory "/var/www/phpMyAdmin"> Order allow,deny Allow from all </Directory> ------------------------------------------------------ apachectl -t Syntax OK /etc/rc.d/init.d/httpd reload
MySQL5.1ではdefault-character-set
ではなくcharacter-set-server
を使用する。
MySQL5.1ではログに警告がでるくらいだが、MySQL5.5くらいのバージョンになると完全に使えなくなるので、念のためcharacter-set-server
を使用した方がよいだろう。
また、phpMyAdminは2系とは異なり、特に設定ファイルを作成しなくてもファイルを展開するだけである程度は利用できるようになっている。
CentOS 5の場合
文字コードがlatin1になっているのをUTF-8に変更する。EUCの場合はutf8をujisと置き換えてください。
追記: 2008/11/22
以前は”init-connect=SET NAMES utf8″を設定していました。しかし、どんな場合でもUTF-8として扱う強制的な設定なため、他の文字コードも混在する場合には不具合の原因となる場合があります。現在はコメントアウトにしています。プログラム側で文字コードの修正ができない場合など有用な場合もあります。
cp /etc/my.cnf /etc/my.cnf.org vi /etc/my.cnf -------------------------------------------------------------- [mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock user=mysql # Default to using old password format for compatibility with mysql 3.x # clients (those using the mysqlclient10 compatibility package). old_passwords=1 default-character-set=utf8 skip-character-set-client-handshake #init-connect=SET NAMES utf8 [mysqld_safe] log-error=/var/log/mysqld.log pid-file=/var/run/mysqld/mysqld.pid default-character-set=utf8 [mysql] default-character-set=utf8 -------------------------------------------------------------- /etc/rc.d/init.d/mysqld restart mysql> show variables like 'char%'; +--------------------------+----------------------------+ | Variable_name | Value | +--------------------------+----------------------------+ | character_set_client | ujis | | character_set_connection | ujis | | character_set_database | ujis | | character_set_filesystem | binary | | character_set_results | ujis | | character_set_server | ujis | | character_set_system | utf8 | | character_sets_dir | /usr/share/mysql/charsets/ | +--------------------------+----------------------------+ 8 rows in set (0.00 sec) mysql>exit
PHPとPHPのモジュールインストール
PHPのインストールをしていない場合はインストールしてください。
yum -y install php php-mysql php-mbstring php-pear php-gd
phpMyAdminのインストール
最新版は本家からダウンロードしてください。phpMyAdmin ダウンロードページ/
CentOS5.2のPHPのバージョンが5.1系なので、PHP5.2以上が必要なphpMyAdmin3系はデフォルトでは利用できません。phpMyAdmin2系の最新版をご検討ください。
cd /usr/local/src/ wget http://jaist.dl.sourceforge.net/sourceforge/phpmyadmin/phpMyAdmin-2.11.9.3-all-languages.tar.gz tar zxvf phpMyAdmin-2.11.9.3-all-languages.tar.gz mv phpMyAdmin-2.11.9.3-all-languages /var/www/phpMyAdmin chown -R root:apache /var/www/phpMyAdmin/ vi /etc/httpd/conf.d/phpmyadmin.conf ------------------------------------------------------ Alias /phpMyAdmin "/var/www/phpMyAdmin" <Directory "/var/www/phpMyAdmin"> Order allow,deny Allow from all </Directory> ------------------------------------------------------ /etc/rc.d/init.d/httpd reload mkdir /var/www/phpMyAdmin/config chmod 777 /var/www/phpMyAdmin/config http://www.example.com/phpMyAdmin/scripts/setup.php にアクセス -------------------------------------------------------------------------------- Load ボタン Servers Add ボタン Authentication type = http Add ボタン Save ボタン -------------------------------------------------------------------------------- mv /var/www/phpMyAdmin/config/config.inc.php /var/www/phpMyAdmin/config.inc.php http://www.example.com/phpMyAdmin/ にアクセスしてログイン確認 ID: root PW: MySQL root パスワード rm -rf /var/www/phpMyAdmin/config chmod 444 /var/www/phpMyAdmin/config.inc.php chmod 000 /var/www/phpMyAdmin/scripts