RDSが起動済みであり、必要なポートに対してセキュリティグループまわりが設定されている状態であることを前提として進めます。
まずはTomcatのインストールです。
# yum -y install java-1.7.0-openjdk tomcat6-webapps # /etc/init.d/tomcat6 start Starting tomcat6: [ OK ]
8080ポートにアクセスし、下記のように表示されることを確認します。
次にJDBCドライバ(MySQL)のインストールです。
# yum -y install mysql-connector-java # rpm -ql mysql-connector-java | grep jar /usr/share/java/mysql-connector-java-5.1.17.jar /usr/share/java/mysql-connector-java.jar # cd /usr/share/java/tomcat6 # ln -s ../mysql-connector-java.jar mysql-connector-java.jar
Tomcatから利用するためにシンボリックリンクを張っているところがポイントです。
そしてデータソースの設定ですが、基本的に下記に従って設定しました。
Apache Tomcat 6.0 (6.0.35) – JNDI Datasource HOW-TO / MySQL DBCP Example
context.xmlを配置するMETA-INFディレクトリを作成します。
# cd /var/lib/tomcat6/webapps/ROOT/ # mkdir META-INF
META-INF/context.xmlは下記の通りです。
パラメータ「url」にRDS(MySQL)のエンドポイントを指定しておきます。
オーナーも調整しておきます。
# chown -R root.tomcat META-INF
WEB-INF/web.xmlは下記の通りです。
Welcome to Tomcat Welcome to Tomcat DB Connection jdbc/suz-mysql javax.sql.DataSource Container
resource-refタグで、利用するDataSourceを指定しておきます。
そして、TomcatをリスタートするとDataSource経由でRDS(MySQL)が利用できるようになります。
下記のテストJSPで接続確認を行います。
上記のJSPにアクセスし次のように表示されれば、接続成功です。
DatabaseProductName: MySQL DatabaseProductVersion: 5.5.27 DriverName: MySQL-AB JDBC Driver DriverVersion: mysql-connector-java-5.1.17-SNAPSHOT ( Revision: ${bzr.revision-id} ) URL: jdbc:mysql://suz-mysql.cpwbxg8dcrxi.ap-northeast-1.rds.amazonaws.com/suzuki UserName: suzuki@10.0.0.166