WEBの勉強ノート
Loading

CentOS5.4 に MySQL5.1,PHP5.3とphpMyAdmin

2010 年 2 月 28 日 日曜日

MySQL、PHP、phpMyAdminのインストールから、Wordpress用のデータベース作成まで。

最新版を入れるため、yumのリポジトリをインストールして変更する。依存関係を解消しながらインストールするより、yum を使った方がずっと楽。

インストール

[root@localhost ~]# wget http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-3.noarch.rpm
[root@localhost ~]# wget http://rpms.famillecollet.com/el5.i386/remi-release-5-6.el5.remi.noarch.rpm
[root@localhost ~]# rpm -Uvh epel-release-5* remi-release-5*

[root@localhost ~]# wget http://dag.wieers.com/rpm/packages/rpmforge-release/rpmforge-release-0.3.6-1.el5.rf.i386.rpm
[root@localhost ~]# rpm -Uvh rpmforge-release-0.3.6-1.el5.rf.i386.rpm

インストールする。

[root@localhost ~]# yum --enablerepo=remi,epel,rpmforge update php* mysql*
[root@localhost ~]# yum --enablerepo=remi,epel,rpmforge install php php-gd php-mbstring php-mysql php-odbc php-pdo php-pear mysql-server mysql-bench

phpMyadmin のインストール。

# yum --enablerepo=remi,epel,rpmforge install phpMyAdmin

PHPの動作確認

apacheの再起動

[root@localhost ~]# service httpd restart

phpinfo を表示してみる。一緒にインストールしたモジュールの項目が表示されていることを確認。

[root@centos ~]# vi /var/www/html/test.php

MySQL 設定

設定は文字コードのみ。

[root@centos ~]# vi /etc/my.cnf
[mysqld]
default-character-set = utf8
[mysql]
default-character-set = utf8

起動、自動起動設定

[root@centos ~]# service mysqld start
[root@centos ~]# chkconfig mysqld on
[root@localhost ~]# chkconfig --list mysqld
mysqld          0:off   1:off   2:on    3:on    4:on    5:on    6:off

mysql の root にパスワードを設定する。OS自体のユーザーとは別もの。まずは、パスワードを設定するユーザーを確認。

[root@centos ~]# mysql -u root
mysql> select user,host,password from mysql.user;
+-------------+-----------------------+-------------------------------------------+
| user        | host                  | password                                  |
+-------------+-----------------------+-------------------------------------------+
| root        | localhost             |                                           |
| root        | localhost.localdomain |                                           |
| root        | 127.0.0.1             |                                           |
|             | localhost             |                                           |
|             | localhost.localdomain |                                           |
+-------------+-----------------------+-------------------------------------------+

root にパスワードを設定。

mysql> set password for root@localhost=password('パスワード');
mysql> set password for root@localhost.localdomain=password('パスワード');
mysql> set password for root@127.0.0.1=password('パスワード');

mysql のrootにパスワードが設定されたことを確認。

mysql> select user,host,password from mysql.user;
+-------------+-----------------------+-------------------------------------------+
| user        | host                  | password                                  |
+-------------+-----------------------+-------------------------------------------+
| root        | localhost             | *0B6A2F2B175B57F40643A0377BE9274ACB964C44 |
| root        | localhost.localdomain | *0B6A2F2B175B57F40643A0377BE9274ACB964C44 |
| root        | 127.0.0.1             | *0B6A2F2B175B57F40643A0377BE9274ACB964C44 |
+-------------+-----------------------+-------------------------------------------+

サンプルデータベース削除。

[root@centos ~]# mysql -u root -p
mysql> show databases;
mysql> drop database test;
mysql> show databases;

wordpress 用のデータベース作成

[root@centos ~]# mysql -u root -p
mysql> create database wordpress;
mysql> grant all privileges on wordpress.* to wordpress@localhost identified by 'パスワード';

phpMyAdmin を使う

yum でインストールした phpMyadmin は以下にインストールされる。

/usr/share/phpMyAdmin

設定はデフォルトのままで使用可能。ただし、ドキュメントルート外にインストールされるので、そのままではアクセスできない。http://phpmyadmin.localhost.com/ でアクセスするため、bind のレコード追加と、Virtual hostの設定をしてみた。

Bind 設定

[root@localhost ~]# cat /var/named/chroot/var/named/localhost.com.db
$TTL    86400
@       IN      SOA     localhost.com.  root.localhost.com.(
                                      2004031901 ; Serial
                                      28800      ; Refresh
                                      14400      ; Retry
                                      3600000    ; Expire
                                      86400 )    ; Minimum
        IN NS    localhost.com.
        IN MX 10 localhost.com.
@       IN A     192.168.0.250
phpmyadmin      IN A    192.168.0.250
*       IN A     192.168.0.250

Virtual host の設定

NameVirtualHost *:80
<VirtualHost *:80>
    ServerAdmin root@localhost.com
    DocumentRoot /usr/share/phpMyAdmin/
    ServerName phpmyadmin.localhost.com
  <Directory "/usr/share/phpMyAdmin">
    AllowOverride All
    Allow from All
  </Directory>
</VirtualHost>
参考記事
CentOS 5.3 に php-5.2.9, mysql-5.1.35 をインストール
データベースサーバー構築(MySQL)

MySQLで「mysqladmin: connect to server at ‘localhost’ failed error: ‘Access denied for user ‘root’@'localhost’ (using password: NO)’」

2010 年 1 月 1 日 金曜日

インストール後、初期設定や動作確認で以下のメッセージが発生する場合がある。たとえば、mysqladmin version などの実行の際。

[root@localhost bin]# mysqladmin version
mysqladmin: connect to server at 'localhost' failed
error: 'Access denied for user 'root'@'localhost' (using password: NO)' 

これは、MySQL の root ユーザーにパスワードを設定した場合に発生する。mysqladmin -u root password ‘new-password’ の実行など。mysqladmin の実行時には、ユーザー名 root を付加し、パスワードを入力することで実効することができる。

[root@localhost bin]# mysqladmin version -u root -p
Enter password:
mysqladmin  Ver 8.42 Distrib 5.1.42, for pc-linux-gnu on i686
Copyright 2000-2008 MySQL AB, 2008 Sun Microsystems, Inc.
This software comes with ABSOLUTELY NO WARRANTY. This is free software,
and you are welcome to modify and redistribute it under the GPL license


Server version          5.1.42-community
Protocol version        10
Connection              Localhost via UNIX socket
UNIX socket             /var/lib/mysql/mysql.sock
Uptime:                 11 min 31 sec
Threads: 1  Questions: 6  Slow queries: 0  Opens: 15  Flush tables: 1  Open tables: 8  Queries per second avg: 0.8