Amazon EC2のMicro InstancesにApacheをセットアップするで構築した環境に、MySQLをセットアップしたいと思います。
前回は、コマンドを実行する際に毎回sudoしていましたが、面倒なので最初に実行しておくことにしました。
sudo su
※ 以降、実行したコマンドはroot権限で実行されます。
MySQLをインストールします。
Loaded plugins: fastestmirror, security
Loading mirror speeds from cached hostfile
amzn | 2.1 kB 00:00
Setting up Install Process
Resolving Dependencies
–> Running transaction check
・
・
・
Total download size: 14 M
Installed size: 31 M
Is this ok [y/N]:y
・
・
・
Installed:
mysql-server.i386 0:5.1.47-1.2.amzn1
Dependency Installed:
mysql.i386 0:5.1.47-1.2.amzn1 mysql-libs.i386 0:5.1.47-1.2.amzn1 perl-DBD-MySQL.i386 0:4.013-3.2.amzn1
perl-DBI.i386 0:1.609-4.2.amzn1
Complete!
インストール完了です。
次に、MySQLの設定を変更します。
今回もyasuの記事、自宅サーバー再構築 その14 CentOS 5.2 にLAMP環境構築(MySQL編)を参考にしました。
/etc/my.cnfを編集します。
※ 編集には、emacsを使用しています。
MySQLの文字コードをUTF-8に変更します
default-character-set = utf8
MySQLクライアントの文字コードをUTF-8に変更します
[mysql]
default-character-set = utf8
以上で設定変更は完了です。
MySQLを起動します。
起動したら、MySQLのrootユーザにパスワードを設定して、コマンドラインでログインする際に、パスワードなしではログインできないようにします。
※ ここも、yasuの自宅サーバー再構築 その14 CentOS 5.2 にLAMP環境構築(MySQL編)を参考にしています。
Welcome to the MySQL monitor. Commands end with ; or g.
Your MySQL connection id is 3
Server version: 5.1.47 Source distribution
MySQLのユーザ、パスワードを確認します。
+——+—————–+———-+
| user | host | password |
+——+—————–+———-+
| root | localhost | |
| root | ip-10-243-3-212 | |
| root | 127.0.0.1 | |
| | localhost | |
| | ip-10-243-3-212 | |
+——+—————–+———-+
5 rows in set (0.00 sec)
ホスト名がlocalhostのrootユーザにパスワード設定します
Query OK, 0 rows affected (0.00 sec)
ホスト名が127.0.0.1のrootユーザにパスワード設定します
Query OK, 0 rows affected (0.00 sec)
MySQLのユーザ、パスワードを確認します。
+——+—————–+——————————————-+
| user | host | password |
+——+—————–+——————————————-+
| root | localhost | 任意のパスワード|
| root | ip-10-243-3-212 | |
| root | 127.0.0.1 | 任意のパスワード|
| | localhost | |
| | ip-10-243-3-212 | |
+——+—————–+——————————————-+
5 rows in set (0.00 sec)
パスワードの設定が完了したので、ログインを確認していきます。
ERROR 1045 (28000): Access denied for user ‘root’@’localhost’ (using password: NO)
[root@ip-10-243-3-212 ec2-user]# mysql -u root -h localhost
ERROR 1045 (28000): Access denied for user ‘root’@’localhost’ (using password: NO)
[root@ip-10-243-3-212 ec2-user]# mysql -u root -h 127.0.0.1
ERROR 1045 (28000): Access denied for user ‘root’@’localhost’ (using password: NO)
これで、パスワードオプション(-p)の指定なしではログインできなくなりました。
MySQLにはデフォルトでtestという名前のデータベースが作成されていますが、不要なので削除します。
登録データベースを確認します
+——————–+
| Database |
+——————–+
| information_schema |
| mysql |
| test |
+——————–+
3 rows in set (0.00 sec)
testデータベースを削除します
Query OK, 0 rows affected (0.00 sec)
再度登録データベースを確認します
+——————–+
| Database |
+——————–+
| information_schema |
| mysql |
+——————–+
2 rows in set (0.00 sec)
testデータベースが削除されました。
最後に、サーバ起動時にMySQLも自動的に起動するようにします。
[root@ip-10-243-3-212 ec2-user]# chkconfig –list mysqld
mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off
ここまでにかかった料金を見てみます。
※ 以下の図は、料金表の抜粋になります。
一番かかっているのがEBSの使用量です。といっても、たいしたことはありませんが。Amazon S3の料金には、今回使用しているInstance以外にも、以前作成したAMIの分が課金されています。常時稼動させているわけではないので、あまり課金されていませんが、サーバ構築がこんなにお安くできてしまうとは!