この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。
ウィスキー、シガー、パイプをこよなく愛する大栗です。 re:Invent 2014の注目新機能の一つであるRDSの新エンジン"Aurora"のPreviewが通ったので試してみました。
本内容はRDS for AuroraのPreview中の内容となります。正式リリース後の内容とは異なる可能性がありますので、ご注意下さい。
Aurora
re:Invent 2014のKeynoteで発表されたAuroraの特徴を確認しておきましょう。AuroraはMySQL 5.6と互換性があり、高速、かつ可用性と耐久性があり、高いスケーラビリティもある、AWSが3年をかけて開発したRDBMSです。
AWSがsysbenchを使用した結果では通常のMySQLに比べて5倍のパフォーマンスが出たという、恐ろしく速いDBなので皆さんが注目しています。
Auroraを起動する
Auroraのドキュメントを元にAuroraを起動してみます。
AWS Documentation » Amazon Relational Database Service (RDS) » User Guide » Aurora on Amazon RDS
まず、AuroraのPreview用ログイン画面(https://db-preview.aws.amazon.com/rds/home?region=us-east-1)にアクセスします。
previewが通っていない場合は、こんな悲しい画面が表示されます。
Auroraを起動してきます。Preview用の専用画面なのでAuroraのみです。今回はデフォルトVPCを使用するので"Use an existing VPC"を選択します。
DBエンジンの選択画面です。AuroraはMySQL 5.6.10と互換性があると書いています。 他のRDSと違ってストレージサイズを選ぶ項目がありませんね。
Advanced SettingはMySQLの画面と全く同じなので違和感無いですね。
いつも通りにRDSを起動します。
EngineがAuroraと表示されています。
一覧画面はデザインが少し変わっています。
詳細画面は今まで通りのデザインです。
Auroraにログインする
Auroraを起動したので、ログインしてみます。
GUIでログインする
MySQL互換なのでMySQL標準のMySQL Workbenchを使用してログインしてみました。
※:アクセスするインスタンスから接続できる様にセキュリティグループを設定してから、先を進めましょう。
通常のMySQLと全く同じ様に設定します。TCP/IPで接続し、設定した内容を記述します。
Test Connectionをしておきます。設定が合っていれば普通に接続できます。
では接続してみます。ごく普通のMySQL 5.6.10として認識されます。
コマンドラインでログインする
次はコマンドラインでアクセスしてみます。
mysqlコマンドでログインします。 普通にログインできます。
# mysql -uawsuser -p -h aurora-oguri-cluster.cluster-cnq0rg96ivqu.us-east-1-beta.rds.amazonaws.com mydb
Enter password:
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2009
Server version: 5.6.10 MySQL Community Server (GPL)
Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
テーブルを作成してみます。 普通に作成できます。
mysql> CREATE TABLE sample_table
-> (col1 int,
-> col2 varchar(20),
-> col3 datetime);
Query OK, 0 rows affected (0.02 sec)
mysql> SHOW TABLES;
+----------------+
| Tables_in_mydb |
+----------------+
| sample_table |
+----------------+
1 row in set (0.00 sec)
mysql> SHOW CREATE TABLE sample_table;
+--------------+--------------------------------------------------------------------------+
| Table | Create Table |
+--------------+--------------------------------------------------------------------------+
| sample_table | CREATE TABLE `sample_table` (
`col1` int(11) DEFAULT NULL,
`col2` varchar(20) DEFAULT NULL,
`col3` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1 |
+--------------+--------------------------------------------------------------------------+
1 row in set (0.00 sec)
データをインサートしてみます。 普通にレコードができます
mysql> INSERT INTO sample_table
-> (col1,
-> col2,
-> col3
-> ) VALUES
-> (1,
-> 'Aurora Data',
-> '2014-01-02 10:20:30'
-> );
Query OK, 1 row affected (0.00 sec)
mysql>
mysql> SELECT * FROM sample_table ;
+------+-------------+---------------------+
| col1 | col2 | col3 |
+------+-------------+---------------------+
| 1 | Aurora Data | 2014-01-02 10:20:30 |
+------+-------------+---------------------+
1 row in set (0.00 sec)
ちょっと気になったので"dual"があるか試してみました。 普通にあります。
mysql> select sysdate() from dual;
+---------------------+
| sysdate() |
+---------------------+
| 2014-12-11 11:16:37 |
+---------------------+
1 row in set (0.00 sec)
さいごに
今回はAuroraを起動しただけですが、ログイン等はMySQLと全く同じでした。エンドポイントだけ渡されたら区別が付かないと思います。次は、もう少し深くAuroraを探ってみようと思います。