この記事では、yum を使用して CentOS に MySQL をインストールする方法を確認します。 mysql と関連パッケージを 1 つずつ検索してインストールする代わりに、yum グループを使用して MySQL をインストールすることをお勧めします。
完全な LAMP スタックのインストールに関心がある場合は、以前の記事を参照してくださいyum を使用して LAMP をインストール/アップグレードする方法。
1. MySQL パッケージのグループ名を特定します
yum グループリスト リポジトリで利用可能なすべてのパッケージ グループを表示します。以下に示すように、mysql パッケージ グループは「MySQL データベース」と呼ばれます。
# yum grouplist | grep -i mysql MySQL Database
2. 「MySQL データベース」グループには何がバンドルされていますか?
yum グループ情報 グループにバンドルされているすべてのパッケージを表示します。これにより、その特定のグループで利用可能な必須、デフォルト、およびオプションのパッケージが表示されます。
以下に示すように、「MySQL データベース」グループには、1 つの必須パッケージ、6 つのデフォルト パッケージ、および 5 つのオプション パッケージが含まれています。
# yum groupinfo "MySQL Database" Group: MySQL Database Description: This package group contains packages useful for use with MySQL. Mandatory Packages: mysql Default Packages: MySQL-python libdbi-dbd-mysql mysql-connector-odbc mysql-server perl-DBD-MySQL unixODBC Optional Packages: mod_auth_mysql mysql-bench mysql-devel php-mysql qt-MySQL
3. yum groupinstall を使用して「MySQL Database」グループをインストールします
yum groupinstall 以下に示すように、パッケージの「MySQL データベース」グループがインストールされます。
# yum groupinstall "MySQL Database" Resolving Dependencies Dependencies Resolved Transaction Summary ========================= Install 12 Package(s) Update 0 Package(s) Remove 0 Package(s) Installed: MySQL-python.i386 0:1.2.1-1 libdbi-dbd-mysql.i386 0:0.8.1a-1.2.2 mysql.i386 0:5.0.77-4.el5_4.2 mysql-connector-odbc.i386 0:3.51.26r1127-1.el5 mysql-server.i386 0:5.0.77-4.el5_4.2 perl-DBD-MySQL.i386 0:3.0007-2.el5 unixODBC.i386 0:2.2.11-7.1 Dependency Installed: libdbi.i386 0:0.8.1-2.1 libdbi-drivers.i386 0:0.8.1a-1.2.2 libtool-ltdl.i386 0:1.5.22-7.el5_4 mx.i386 0:2.0.6-2.2.2 perl-DBI.i386 0:1.52-2.el5 Complete!
注: インストール中に問題が発生した場合は、完全な mysql インストール ログを確認して、何が欠けているかを確認してください。
4. MySQL のインストールを確認する
rpm -qa を実行して、mysql 関連のパッケージがインストールされていることを確認します。
# rpm -qa | grep -i mysql MySQL-python-1.2.1-1 mysql-5.0.77-4.el5_4.2 mysql-connector-odbc-3.51.26r1127-1.el5 mysql-server-5.0.77-4.el5_4.2 libdbi-dbd-mysql-0.8.1a-1.2.2 perl-DBD-MySQL-3.0007-2.el5
/etc/passwd と /etc/group をチェックして、mysql ユーザー名とグループが作成されていることを確認してください。
# grep mysql /etc/passwd mysql:x:27:27:MySQL Server:/var/lib/mysql:/bin/bash # grep mysql /etc/group mysql:x:27:
5. MySQL インストール後 – mysql_install_db を実行
mysql_install_db プログラムは、必要な付与テーブルをセットアップします。 mysql_install_db プログラムは、rpm インストールの一部として実行されます。ただし、付与テーブルが適切に設定されていることを確認するために mysql_install_db プログラムを再度実行しても問題はありません。
# /usr/bin/mysql_install_db --user=mysql Installing MySQL system tables...OK Filling help tables...OK ..... The latest information about MySQL is available on the web at http://www.mysql.com
6. MySQL サーバーを起動
# service mysqld status mysqld is stopped # service mysqld start Starting MySQL: [ OK ]
7. MySQL サーバーが稼働中であることを確認してください。
# /usr/bin/mysqladmin version /usr/bin/mysqladmin Ver 8.41 Distrib 5.0.77, for redhat-linux-gnu on i686 Copyright (C) 2000-2006 MySQL AB 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.0.77 Protocol version 10 Connection Localhost via UNIX socket UNIX socket /var/lib/mysql/mysql.sock Uptime: 39 sec Threads: 1 Questions: 2 Slow queries: 0 Opens: 12 Flush tables: 1 Open tables: 6 Queries per second avg: 0.051
# /usr/bin/mysqlshow +--------------------+ | Databases | +--------------------+ | information_schema | | mysql | | test | +--------------------+ # /usr/bin/mysqlshow mysql Database: mysql +---------------------------+ | Tables | +---------------------------+ | columns_priv | | db | | func | | help_category | | time_zone_transition | | time_zone_transition_type | | user | +---------------------------+
mysql サーバーを停止して再起動し、問題がないことを確認してください。
# service mysqld stop Stopping MySQL: [ OK ] # service mysqld start Starting MySQL: [ OK ]
8. MySQL root アカウントのパスワードを変更する
MySQL root アカウントのパスワードを安全なものに変更してください。
# mysql -u root Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 5 Server version: 5.0.77 Source distribution Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql> select host, user from mysql.user; +-----------+------+ | host | user | +-----------+------+ | 127.0.0.1 | root | | localhost | | | localhost | root | +-----------+------+ 5 rows in set (0.00 sec) mysql> set password for 'root'@'localhost' = PASSWORD('DoNotTell$AnyBody'); Query OK, 0 rows affected (0.00 sec) mysql> set password for 'root'@'127.0.0.1' = PASSWORD('DoNotTell$AnyBody'); Query OK, 0 rows affected (0.00 sec)
以下に示すように、新しいパスワードを使用して MySQL にログインできることを確認してください。
# mysql -u root ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO) # mysql -u root -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 7 Server version: 5.0.77 Source distribution Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql>