Amazon EC2 にてAmazon Linux AMIにMySQLを入れる
Amazon EC2にて、Amazon Linux AMI(32bit)を使い、マイクロインスタンスでインスタンスを作成した。そこにMySQLを入れてみた。
インスタンスの起動までは試していたが、その起動はブラウザからAWS Management Consoleで行っていたため、ターミナルからsshを使ってアクセスできるようにする。
インスタンスを生成した際にキーファイル(pem)は手元にあるため、以下のコマンドで接続できた。
$ssh ec2-user@{Public-DNS} -i xxx.pem __| __|_ ) Amazon Linux AMI _| ( / Beta ___|\___|___|
これでOKなので、現在のサービス一覧を見てみます。基本的に何も入っていません。
$ sudo service --status-all anacron is stopped atd (pid 918) is running... Usage: /etc/init.d/cloud-init {start|stop|restart} Usage: /etc/init.d/cloud-init-user-scripts {start|stop|restart} conmand is stopped Frequency scaling not supported under xen kernels crond (pid 903) is running... iptables: Firewall is not running. irqbalance is stopped mdadm is stopped mdmpd is stopped multipathd is stopped netconsole module not loaded Configured devices: lo eth0 Currently active devices: lo eth0 ntpd (pid 870) is running... Process accounting is disabled. rdisc is stopped sandbox is stopped saslauthd is stopped sendmail-l (pid 886) is running... sm-client-l (pid 894) is running... openssh-daemon (pid 859) is running... syslogd (pid 767) is running... klogd (pid 770) is running... yum-updatesd (pid 937) is running...
次に、いよいよMySQLをインストールします。参考にしたのは MySQL :: MySQL 5.1 Reference Manual :: 15.4.1 Setting Up MySQL on an EC2 AMI です。
$ sudo yum install mysql (略) Running Transaction Installing : mysql-libs-5.1.47-1.2.amzn1.i386 1/2 Installing : mysql-5.1.47-1.2.amzn1.i386 2/2 Installed: mysql.i386 0:5.1.47-1.2.amzn1 Dependency Installed: mysql-libs.i386 0:5.1.47-1.2.amzn1 Complete!
これでインストールが完了するのですが、どうもおかしい。作られる予定の/var/lib/mysqlや/etc/init.d/mysqldがないのです。少し調べてみると、MySQL の公式 RPM を使おう | Carpe Diem に記述があるように mysqlの指定だと、MySQL-client-community + MySQL-shared-communityだけがインストールされるようです。(本家のドキュメントには「This installs both the MySQL server and the Perl DBD::mysql driver for the Perl DBI API. 」と書いてあるのに。。。)
そこで以下を実行したところ、MySQL-server-communityがインストールされした。
$ sudo yum install mysql-server (略) Running Transaction Installing : perl-DBI-1.609-4.2.amzn1.i386 1/3 Installing : perl-DBD-MySQL-4.013-3.2.amzn1.i386 2/3 Installing : mysql-server-5.1.47-1.2.amzn1.i386 3/3 Installed: mysql-server.i386 0:5.1.47-1.2.amzn1 Dependency Installed: perl-DBD-MySQL.i386 0:4.013-3.2.amzn1 perl-DBI.i386 0:1.609-4.2.amzn1 Complete!
これでmysqlユーザも作成されるので、mysqlユーザになってmysql-serverを起動します。今回は、/etc/my.cnfはデフォルトのままで修正しませんでした。
$ /etc/init.d/mysqld start
サービスを確認してみても、「mysqld (pid 21646) is running...」と出ています。動作確認もOKでした。
$ mysql mysql> select VERSION(), CURRENT_DATE; +-----------+--------------+ | VERSION() | CURRENT_DATE | +-----------+--------------+ | 5.1.47 | 2010-11-07 | +-----------+--------------+ 1 row in set (0.00 sec)
さて、5.1.47がインストールされているのですが、これはデフォルトでInnoDBが有効なのかな?続きは次回。