ApsaraDB for RDS

ApsaraDB for RDS
クイックスタート (MySQL)
ApsaraDB for RDS
クイックスタート (MySQL)
クイックスタート (MySQL)
ApsaraDB の概要
ApsaraDB リレーショナルデータベースサービス (RDS) は安定性、信頼性に優れた自動スケーリングオンラ
インデータベースサービスです。Apsara 分散ファイルシステムと高パフォーマンスのストレージをベースに
、MySQL、SQL Server、PostgreSQL の DB エンジンをサポートしています。また、障害復旧、バックアッ
プ、リカバリ、モニタリング、移行など、さまざまな機能のソリューションが用意されているため、データ
ベースの運用や管理の心配をする必要がありません。RDS の管理には、RDS コンソールか、API と SDK を
使用できます。
ドキュメントの概要
このドキュメントでは、以下のエントリレベルのタスクについて説明します。
ApsaraDB の機能と価格の詳細については、ApsaraDB の公式 Web サイトにログインしてください。
用語
用語
説明
ローカルデータベース/ソースデータベース
ローカルサーバに構築されているデータベースを
指します。このドキュメントではほとんどの場合
、ApsaraDB に移行するソースデータベースを指
します。
RDS for XX (XX は MySQL、SQL Server、
PostgreSQL)
特定のデータベースタイプの RDS を指します。
たとえば、RDS for MySQL は、データベースタ
イプが MySQL で、RDS で有効になっているイ
ンスタンスです。
1
ApsaraDB for RDS
クイックスタート (MySQL)
ご利用案内
ApsaraDB for MySQL は、インスタンスの安定性とセキュリティを確保するため下記に示すように一部使用
制限があります。
操作
RDS の使用に関する制限
データベースパラメーターの設定変更
ほとんどのデータベースパラメーターは RDS コ
ンソールまたは OPEN API で変更できます。一
部のパラメーターは変更できません。
データベースのルート権限
root または sa 権限は利用できません。
データベースのバックアップ
コマンドラインまたはグラフィカルインターフェ
イスを使用して論理バックアップを実行できます
。
物理バックアップについては、RDS コンソール
または OPEN API を使用する必要があります。
データベースの復元
コマンドラインまたはグラフィカルインターフェ
イスを使用して論理データを復元できます。
物理復元については、RDS コンソールまたは
OPEN API を使用する必要があります。
データの移行
コマンドラインまたはグラフィカルインターフェ
イスを使用して論理インポートを実行できます。
mysqldump およびデータ転送を使用してデータ
移行を実行できます。
MySQL ストレージエンジン
現在 MyISAM、InnoDB および TokuDB のみが
サポートされています (MyISAM の欠陥によりテ
ーブルが破損する場合があるため、新しいインス
タンス作成時は MyISAM を選択できません、既
存のインスタンスのみサポートします)。
パフォーマンスおよびセキュリティの考慮事項の
ため、InnoDB ストレージエンジンをお勧めしま
す。
メモリエンジンはサポートされていません。メモ
リエンジンテーブルを作成する場合、 InnoDB エ
ンジンテーブルに自動的に変換されます。
データベースレプリケーションの構築
アクティブ/スタンバイ MySQL レプリケーショ
ンは自動的に構築されるため、手動で構築する必
要はありません。
MySQL のスレーブノードはユーザーに表示され
ないため、直接アクセスできません。
RDS インスタンスの再起動
インスタンスの再起動は、RDS コンソールまた
は OPEN API から行う必要があります。
パスワードをデータベースで直接変更またはデー
タベースとユーザーの作成
上記の操作は RDS コンソールから行う必要があ
ります。
上記の操作をデータベースで実行するには、RDS
コンソールでスーパー権限を持つアカウントを作
成してください。
2
ApsaraDB for RDS
クイックスタート (MySQL)
RDS コンソールへのログイン
RDS 上のインスタンス管理操作は、RDS コンソールから実行します。ここでは、RDS コンソールにログイ
ンし、特定のインスタンスの管理コンソールインターフェイスにアクセスして、インスタンスの管理や制御
を行う方法について説明します。
前提条件
RDS コンソールにログインする前に、RDS インスタンスを購入する必要があります。RDS インスタンスの
購入方法については、「購入」を参照してください。料金の詳細については、ApsaraDB for RDSのページを
ご参照ください。
操作手順
RDS の購入用のアカウントを使用して、RDS コンソールにログインします。
メニューの [インスタンスリスト] を選択し、[インスタンス名] でデータベースのインスタンス名
をクリックするか、対応する [管理] をクリックして、そのインスタンスの管理インターフェイス
にアクセスします (下図を参照)。
後処理
特定のインスタンスの管理コンソールにアクセス後は、そのインスタンスアカウントやデータベース管理、
インスタンスパラメーターの設定など、さまざまな操作を実行できます。
インスタンス基本設定
3
ApsaraDB for RDS
クイックスタート (MySQL)
接続モードの設定
アプリケーションが同じリージョン内の ECS にデプロイされている場合、インターネットアドレスは必要あ
りません。その場合は、この手順をスキップしてください。アプリケーションが Alibaba Cloud 以外のシス
テムにデプロイされている場合は、インターネットアドレスを申請して、それをアプリケーションの相互接
続に使用する必要があります。
背景情報
RDS には、イントラネットアドレスとインターネットアドレスの 2 種類の接続アドレスがあります。
- イントラネットアドレスまたはインターネットアドレスは、[接続モード] が [標準モード] である場
合にのみ使用できます。
●
アプリケーションが同じリージョン内の ECS にデプロイされている場合は、イントラネ
ットアドレスを使用できます。イントラネットアドレスはデフォルトで提供され、接続ア
ドレスは直接変更できます。
●
アプリケーションが Alibaba Cloud 以外のシステムにデプロイされている場合は、イン
ターネットアドレスを使用する必要があります。[インターネットアドレスの取得] をクリ
ックして、イントラネットアドレスをリリースしてインターネットアドレスを生成します
。
- イントラネットアドレスおよびインターネットアドレスは、[接続モード] が [高セキュリティモー
ド] である場合にのみ同時に使用できます。アプリケーションが同じリージョン内の ECS および
Alibaba Cloud 以外のシステムに同時にデプロイされている場合は、イントラネットアドレスとイ
ンターネットアドレスの両方を使用する必要があります。
注意
- インターネットアドレスのトラフィックに対して料金が発生します。料金の詳細については、「パ
ブリッククラウドの価格」を参照してください。
- 伝送速度とセキュリティレベルの向上のために、アプリケーションを RDS と同じリージョンの
ECS に移行することをお勧めします。
操作手順
この例では、イントラネットアドレスとインターネットアドレスの両方を使用します。RDS を使用する際に
は、実際のシステム計画に基づいて接続モードを設定してください。
1. RDS コンソールにログインします。
2. メニューで [データベースの接続] を選択します。
[データベースの接続] で [接続モードの切り替え] をクリックし、表示される確認インターフェイ
4
ApsaraDB for RDS
クイックスタート (MySQL)
スで [OK] をクリックして、アクセスモードを [高セキュリティモード] に切り替えます (下図を参
照)。[接続モード] が既に [高セキュリティモード] になっている場合は、切り替える必要はありま
せん。
- 標準モード: RDS で LSB が使用されて、データベースエンジンの HA 切り替えがアプリ
ケーションレイヤーに影響を与えなくなり、応答時間も短縮されますが、一時的な切断
が発生する可能性がやや高くなるほか、RDS が SQL をインターセプトできなくなります
。このモードでサポートされる接続アドレスは 1 つだけです。インスタンスにイントラ
ネットアドレスとインターネットアドレスの両方がある場合は、いずれかのアドレスを
リリースしてから [標準モード] に切り替える必要があります。
- 高セキュリティモード: このモードでは、一時的な切断が 90% 防止されるほか、SQL の
インターセプトもサポートされていますが (SQL のセマンティック分析に基づいて SQL
インジェクション攻撃が防止されます)、応答時間が 20% 以上増加します。このモード
では、イントラネットアドレスとインターネットアドレスの共存がサポートされていま
す。
[インターネットアドレスの取得] をクリックし、表示される確認インターフェイスで [OK] をクリ
ックしてインターネットアドレスを生成します (下図を参照)。インターネットアドレスでは、トラ
フィックで料金が発生したり、インスタンスのセキュリティが低下したりする可能性があります。
使用する際には注意してください。
[接続アドレスの変更] をクリックし、表示されるウィンドウでイントラネットとインターネットの
接続アドレスおよびポート番号を設定して、[OK] をクリックします (下図を参照)。
5
ApsaraDB for RDS
クイックスタート (MySQL)
- 接続タイプ: 変更する接続タイプに応じて、[イントラネットアドレス] または [インター
ネットアドレス] を選択します。
- 接続アドレス: アドレス形式は、xxx.mysql.rds.aliyuncs.com です。xxx は、8 ~ 64 文
字 (アルファベットと数字のみサポート) のユーザー定義フィールドです。先頭の文字は
小文字のアルファベットである必要があります (例: extranet4example)。
- ポート: RDS が外部サービスを提供するポートの番号を指定します。3,200 ~ 3,999 の整
数を指定できます。
データベースとアカウントの作成
データベースを使用する前に、RDS インスタンスでデータベースとアカウントを作成する必要があります。
つまり、データベースを移行する前に、ローカルデータベースと一致するデータベースを RDS インスタンス
で作成し、RDS インスタンスとローカルデータベースで同じアカウントを作成する必要があります。
背景情報
- ローカルデータベースを RDS に移行する際は、RDS データベースとローカルデータベースで一致
する移行アカウントとデータベースを使用してください。
- 同一インスタンス内のデータベースは、このインスタンスのすべてのリソースを共有します。
MySQL インスタンスは最大 500 個のデータベースと 500 個のアカウントをサポートしています。
注意:
- データベースアカウントの権限を割り当てる際は、最小権限の原則とサービス規則に従ってアカウ
ントを作成し、読み取り専用および読み取り/書き込み権限を合理的に割り当てます。必要に応じて
、データベースアカウントとデータベースをさらに小さく分割して、各アカウントが自身のサービ
スに関係するデータのみアクセスできるようにします。データをデータベースに書き込む必要がな
い場合、参照権限のみを割り当ててください。
- データベースアカウントに強力なパスワードを使用して、パスワードを定期的に変更してください
。
操作手順
1. RDS コンソールにログインし、対象のインスタンスを選択します。
メニューの [アカウント管理] を選択し、[アカウント作成] をクリックします (下図を参照)。
6
ApsaraDB for RDS
クイックスタート (MySQL)
作成するアカウントの情報を入力し、[OK] をクリックします (下図を参照)。
- データベースアカウント: 2 ~ 16 文字のアカウントを指定します (小文字のアルファベッ
ト、数字、アンダースコアを使用できます)。最初の文字にはアルファベットを、最後の
文字にはアルファベットか数字を使用する必要があります (例: user4example)。
- 許可済みデータベース: このアカウントの権限付与済みデータベースを指定します。左側
の [未許可のデータベース] を選択し、[許可] をクリックして、[許可済みデータベース]
にデータベースを追加します。まだデータベースを作成していない場合は空白のままで
かまいません。[許可済みデータベース] の右上にある権限設定ボタンをクリックすると
、このアカウントのデータベースの権限をまとめて設定することができます (すべて設定
読み取り/書き込み または すべて設定 読み取り専用)。
- パスワード: このアカウントのパスワードを指定します。パスワードは 6 ~ 32 文字で、
アルファベット、数字、ハイフン、アンダースコアを使用できます (例:
password4example)。
- パスワードの確認: 正しく入力されていることを確認するためにパスワードをもう一度入
力します (例: password4example)。
7
ApsaraDB for RDS
クイックスタート (MySQL)
- 備考: 今後のアカウント管理のために、このアカウントの関連情報を追加することができ
ます。入力できる文字数は最大 256 文字です (漢字 1 文字は 3 文字に相当します)。
メニューで [データベース管理] を選択し、[データベースを作成] をクリックします (下図を参照
)。
作成するデータベースの情報を入力し、[OK] をクリックします (下図を参照)。
- データベース (DB) 名: 2 ~ 64 文字を指定します (小文字のアルファベット、数字、アン
ダースコア、ハイフンを使用できます)。最初の文字にはアルファベットを、最後の文字
にはアルファベットか数字を使用する必要があります (例: dbname4example)。
- サポートされる文字コード: データベースに utf8、gbk、latin1、utf8mb4 の文字セット
が設定できます。
- 許可されたアカウント: このデータベースが権限を付与するアカウントを選択します。ま
だアカウントを作成していない場合は空白のままでかまいません。
- アカウントタイプ: このオプションは、[許可されたアカウント] でアカウントを選択する
8
ApsaraDB for RDS
クイックスタート (MySQL)
と表示されます。このデータベースが付与する権限を [許可されたアカウント] のアカウ
ントに設定します (読み取り/書き込み または 読み取り専用)。
- 補足: 今後のデータベース管理のために、このデータベースの関連情報を追加することが
できます。入力できる文字数は最大 256 文字です (漢字 1 文字は 3 文字に相当します)。
特権アカウントの作成
ApsaraDB for MySQL は特権アカウントの作成をサポートしています。特権アカウントを使用することによ
って、直接に作成 (CREATE)、ドロップ (DROP)、権限の付与 (GRANT)、およびその他のコマンドをインス
タンスで実行し、管理操作をさらに便利に実行できます。
注意:
- 特権アカウントの有効は、MySQL5.5, 5.6 のみとなります
- 特権アカウントは、一度作成されると削除することができません。特権アカウントが存在すると、
コンソール画面上の操作はできなくなるので、ご注意ください。
使用上の注意
現在、特権アカウントを作成できるのは ApsaraDB for MySQL (5.6)だけです。特権アカウントによってサポ
ートされる権限のリストについては、以下に示す「特権アカウントの権限リスト」を参照してください。特
権アカウントがプライマリインスタンスで作成されると、読み取り専用インスタンスおよび障害復旧インス
タンスと同期されます。システムが特権アカウントモードに切り替わると、次の変更が発生します。
- データベースとアカウントの管理には、RDS コンソールまたは API を使用できません。管理を実装
するために対応するコマンドをインスタンスで直接実行できます。 コンソールの [アカウント管理]
および [データベース管理] ページは表示できなくなります。アプリケーションでデータベースまた
はアカウントを作成するために API を呼び出す場合は、アプリケーションを事前に変更しておいて
ください。
- MySQL の 1 つのデータベースバックアップ機能の使用モードが変更され、バックアップ用のデー
タベースを手作業で入力する必要があります。
- 以下を使用して作成されたアカウントを表示できます。show grants for xxx
- mysql.user および mysql.db テーブルに直接アクセスできませんが、既存のアカウントと権限を
mysql.user_view および mysql.db_view を介して表示できます。
- グローバル変数。たとえば、set global xxx = on は変更できません。
- 別のアカウントを作成する場合、以下のようなメソッドを使用して権限を割り当てることができま
す。
grant select on test. to user01@'%' identified by ‘user01password';
権限またはパスワードを変更するには、以下の後で権限を再度付与します。
Drop user user01;
- 特権アカウントの権限およびパスワードは、コンソールまたは API を使用してリセットできます。
インスタンスで既に作成されている他のアカウントは影響を受けません。
9
ApsaraDB for RDS
クイックスタート (MySQL)
- 特権アカウントの作成プロセス中に、インスタンスは一度再起動され、30 秒以内にネットワークが
一時的に切断されます。適切なタイミングでアカウントを作成するようにします。また、アプリケ
ーションでデータベースの再接続をサポートするようにします。
操作手順
RDS コンソールにログインし,該当インスタンスを選択します。
[アカウント管理]をクリックし、[特権アカウントを作成する]をクリックします。
特権アカウントを作成する注意事項を確認します。[上記注意事項を理解し、特権アカウントを作
成します]にチェックを入れて、[次へ]をクリックします。
特権アカウントの情報を入力し、[作成]をクリックします。注意: アカウントの作成には 3 ~ 5
分ほどかかります。プロセス中にインスタンスの一時的な切断が行われます。関連するアプリケー
ションに自動再接続のメカニズムがあることを確認してください。アカウントが作成されると、ア
カウント名は変更できませんが、パスワードは後からコンソールで変更できます。
10
ApsaraDB for RDS
クイックスタート (MySQL)
特権アカウントの権限リスト
権限
サポートしているかどうか (Y/N)
alter
Y
Alter_routine
Y
create
Y
Create_routine
Y
Create_tem_table
Y
Create_user
Y
Create view
Y
delete
Y
drop
Y
ececute
Y
event
Y
grant
一部サポート
index
Y
insert
Y
11
ApsaraDB for RDS
クイックスタート (MySQL)
Lock_tables
Y
process
Y
reload
一部サポート
Repl_client
Y
Repl_slave
Y
Select
Y
trigger
Y
update
Y
データの移行
Mysqldump を使用したデータの移行
Mysqldump は簡単に使用できますが、ダウンタイムが長くなります。このツールは、データ量が小さいケ
ースや長いダウンタイムでも支障が出ないケースに適切です。
背景情報
RDS によって提供されるリレーショナルデータベースサービスはネイティブのデータベースサービスと完全
な互換性があるため、元のデータベースを RDS インスタンスに移行する手順は、ある MySQL サーバーから
別の MySQL サーバーにデータ移行するのと同様です。
前提条件
RDS インスタンスの準備ができていること。詳細については、「接続モードの設定」および「データベース
とアカウントの作成」を参照してください。
- ECS を購入済みであること。
操作手順
1. MySQL プロセスを終了します。
12
ApsaraDB for RDS
クイックスタート (MySQL)
$mysql_dir/bin/mysqladmin -u root -p shutdown
Mysql_dir が MySQL のインストールディレクトリです。
2. mysqldump のデータエクスポートツールを使用して、データベース内のデータをデータファイル
としてエクスポートします。
注意: このステップがエクスポートするのはデータのみで、ストアドプロシージャ、トリガーおよ
び関数は含まれません。
mysqldump -h localIp -u userName -p --opt --default-character-set=utf8 --hex-blob dbName --skiptriggers > /tmp/dbName.sql
パラメーターの説明:
- localIp: ローカルデータベースサーバーの IP アドレス
- userName: ローカルデータベースの移行アカウント
- dbname: 移行するデータベースの名前
- /tmp/dbName.sql: バックアップファイル名
3. mysqldump を使用して、ストアドプロシージャ、トリガーおよび関数をエクスポートします。
注意: ストアドプロシージャ、トリガーおよび関数がデータベースで使用されていない場合、この
手順をスキップしてください。ストアドプロシージャ、トリガーおよび関数をエクスポートする場
合、RDS との互換性を持たせるためには “definer” を削除する必要があります。
mysqldump -h localIp -u userName -p --opt --default-character-set=utf8 --hex-blob dbName -R | sed e 's/DEFINER[ ]*=[ ]*[^*]*\*/\*/' > /tmp/triggerProcedure.sql
パラメーターの説明:
- localIp: ローカルデータベースサーバーの IP アドレス
- userName: ローカルデータベースの移行アカウント
- dbname: 移行するデータベースの名前
- /tmp/triggerProcedure.sql: バックアップファイル名
4. データファイルおよびストアドプロシージャファイルを ECS にアップロードするには、ECS プロ
ダクトのドキュメントを参照してください。
次のセクションは、以下のパスにファイルをアップロードする方法を示します。
/tmp/dbName.sql
/tmp/triggerProcedure.sql
5. ECS にログインして、データファイルおよびストアドプロシージャファイルをターゲット RDS に
インポートします。
mysql -h intranet4example.mysql.rds.aliyuncs.com -u userName -p dbName < /tmp/dbName.sql
mysql -h intranet4example.mysql.rds.aliyuncs.com -u userName -p dbName <
/tmp/triggerProcedure.sql
13
ApsaraDB for RDS
クイックスタート (MySQL)
パラメーターの説明:
- intranet4example.mysql.rds.aliyuncs.com: 例としてイントラネットアドレスを使用し
た、RDS インスタンス接続アドレス
- userName: RDS データベースの移行アカウント
- dbname: インポートするデータベースの名前
- /tmp/dbName.sql: インポートするデータファイルの名前
- /tmp/triggerProcedure.sql: インポートするストアドプロシージャファイルの名前
データの圧縮
RDS for MySQL 5.6 は TokuDB ストレージエンジンによるデータ圧縮機能を提供します。大量のテストによ
って、データテーブルを InnoDB ストレージエンジンから TokuDB エンジンに転送後、データ量は 80% ~
90% 削減されることがわかっています (例えば、2T データの場合 400G またはそれ以下に圧縮できる)。デ
ータ圧縮に加え、TokuDB ストレージエンジンはトランザクションおよびオンライン DDL 操作もサポートし
ており、これは MyISAM または InnoDB ストレージエンジン上で実行するアプリケーションと互換性があ
ります。
Alibaba Cloud は、InnoDB ストレージエンジンを使用することを強くお勧めします。InnoDB はパフォーマ
ンスを向上させ、またデータテーブルの破損を回避する優れた設計であるためです。
TokuDB の制約の説明
- TokuDB ストレージエンジンは外部キーをサポートしていません。
- TokuDB ストレージエンジンは頻繁かつ大量の読み取りが必要なシナリオには適用できません。
操作手順
1. 次のコマンドを実行して MySQL のバージョンを確認します。
注意: 現在、TokuDB ストレージエンジンをサポートしているのは MySQL 5.6 のみです。MySQL
5.1 または 5.5 の場合、最初に MySQL 5.6 にアップグレードする必要があります。
SELECT version();
2. loose_tokudb_buffer_pool_ratio、つまり、TokuDB および InnoDB の共有キャッシュで
TokuDB が占める割合を設定します。
select sum(data_length) into @all_size from information_schema.tables where engine='innodb';
select sum(data_length) into @change_size from information_schema.tables where engine='innodb' and
concat(table_schema, '.', table_name) in ('XX.XXXX', 'XX.XXXX', 'XX.XXXX');
select round(@change_size/@all_size*100);
14
ApsaraDB for RDS
クイックスタート (MySQL)
XXX.XXXX は、TokuDB ストレージエンジンに転送されるデータベースおよびテーブルを指しま
す。
3. インスタンスを再起動します。
操作手順については、「インスタンスの再起動」を参照してください。
4. ストレージエンジンを変更します。
ALTER TABLE XX.XXXX ENGINE=TokuDB
XXX.XXXX は、TokuDB ストレージエンジンに転送されるデータベースおよびテーブルを指しま
す。
DMS にログインしてデータテーブルのストレージエンジンを変更することもできます。操作の詳
細については、DMS プロダクトのドキュメントを参照してください。
インスタンスのスケーリング
読み取り専用インスタンスの作成
書き込みリクエストが少なく、大量の読み取りリクエストがある業務要件に対し、インスタンス一つだけで
は参照負荷が高い。そういう場合は、サービスに影響することがあります。参照性能の自動スケーリングを
実現してデータベース負荷を軽減するには、同じリージョンで一つまたは複数の読み取り専用インスタンス
を作成することができます。こうして、大量データの読み取り、アプリケーションスループットの向上を実
現することができます。
背景情報
シングル物理ノード (スタンバイノードがない) 上の読み取り専用インスタンスは、MySQL のレプリケーシ
ョン機能を使用して、プライマリインスタンス内の変更をすべての関連する読み取り専用インスタンスに同
期します。読み取り専用インスタンスはダウンした場合 24 時間以内に復元されます。
読み取り専用インスタンスのトポロジを次に示します。
15
ApsaraDB for RDS
クイックスタート (MySQL)
読み取り専用インスタンスには、次の特徴があります。
- 読み取り専用インスタンスのスペックはプライマリインスタンスのスペックと異なることは可能で
す。いつでも変更できるので、柔軟にアップグレードおよびダウングレードを行うことができます
。
- 読み取り専用インスタンスは時間単位で課金されますから、ユーザーにとって利用しやすく経済的
です。
注意: 読み取り専用インスタンスは、料金滞納して 24 時間以降でロックされ、7 日間以降でリリー
スされます。アカウントに十分な資金があることを確認してください。
- 読み取り専用インスタンスに対してアカウント管理またはデータベースメンテナンスの必要はあり
ません。アカウントとデータベースはプライマリインスタンスから同期されます。
- 独自なホワイトリスト設定
- システムパフォーマンスのモニタリング: ディスク容量、IOPS、接続数、CPU 使用率およびネット
ワークトラフィックなどを含む、20 近くのシステムパフォーマンスモニタリングビューが備わって
います。インスタンスの負荷を簡単に表示できます。
- 最適化の推奨事項: ストレージエンジンチェック、プライマリキーチェック、ラージテーブルチェッ
ク、過剰インデックス作成とインデックス不足のチェックなどのさまざまな最適化の推奨事項を提
供します。最適化の推奨事項と特定のアプリケーションに基づいてデータベースを最適化できます
。
前提条件
- 現在、MySQL データベースタイプの RDS インスタンスのみが読み取り専用インスタンスを作成す
ることができます。
- 読み取り専用インスタンスを作成するには、プライマリインスタンスは MySQL 5.6 以降のバージ
ョンであることが必要です。プライマリインスタンスはバージョンアップする必要がある場合、バ
ージョンアップする前に、互換性テストを実行してください。もしくは MySQL 5.6 の新しいイン
スタンスを作成し、プライマリインスタンスのデータを新しいインスタンスにコピーしてから、読
16
ApsaraDB for RDS
クイックスタート (MySQL)
み取り専用インスタンスを作成します。
機能制限
読み取り専用インスタンスには、次の利用制限があります。
- プライマリインスタンスは、最大 5 つの読み取り専用インスタンスが作成できます。
- バックアップ設定: バックアップ設定および一時的なバックアップはサポートされていません。
- データの移行: 読み取り専用インスタンスへのデータの移行はサポートされていません。
- データベース管理: データベース作成と削除はサポートされていません。
- アカウントの管理: アカウントの作成および削除はできません。つまり、アカウント権限付与とアカ
ウントパスワード変更はできません。
- インスタンスの復旧: 読み取り専用インスタンスは、バックアップファイルまたはある時点からの一
時的なインスタンスを作成できません。また、バックアップセットを使用してインスタンスを上書
きできません。
- 読み取り専用インスタンスの作成後、プライマリインスタンスは、バックアップセットを使用して
インスタンスを直接上書きすることでデータ復旧を行うことはできません。
操作手順
1. RDS コンソールにログインし、対象のインスタンスを選択します。
メニューの [基本情報] を選択し、[インスタンスタイプ別の数] で [参照用インスタンスを追加] を
クリックします (下図を参照)。
読み取り専用インスタンスを購入するには、「購入ガイド」を参照してください。
- データの同期で I/O パフォーマンスを保証するため、読み取り専用インスタンスの設定
がプライマリインスタンスの設定の同等以上にすることをお勧めします。
- 複数の読み取り専用インスタンスを購入して可用性を向上させることをお勧めします。
読み取り専用インスタンスの購入後、プライマリインスタンスの [インスタンスタイプ別の数] お
17
ApsaraDB for RDS
クイックスタート (MySQL)
よび RDS 管理コンソールの [インスタンスリスト] に表示されます。
後処理
読み取り専用インスタンスの作成後、通常インスタンスと同様に RDS 管理コンソール で管理できます。特
定の管理機能は、インターフェイスによって異なる場合があります。また、下記の図のように、読み取り専
用インスタンスの管理ページではプライマリインスタンスとの同期遅延が表示されます。
インスタンスへの接続
RDS インスタンスに接続する際、通常のクライアント接続か、Alibaba Cloud DMS を使用して接続するこ
とができます。ここでは、RDS インスタンスに接続する方法について説明します。
前提条件
RDS インスタンスにアクセスするには、接続元のアドレスを RDS のホワイトリストに追加する必要があり
ます。詳細については、「ホワイトリストの設定」を参照してください。
クライアントからのログイン
RDS はネイティブデータベースサービスと完全に互換性があるので、ユーザーから見たデータベースの接続
方法も似ています。ここでは例として、MySQL クライアントを使用して RDS インスタンスに接続する方法
を説明します。この方法は、他のクライアントを使用する場合にも利用できます。
MySQL クライアントの使用
MySQL クライアントによって、コマンドラインを使用して RDS インスタンスに接続できます。
mysql -h extranet4example.mysql.rds.aliyuncs.com -P 3306 -u UserName -p Password
パラメーターは次のとおりです。
- -h: RDS インスタンスのホスト名。これは、RDS インスタンスのイントラネットアドレスまたはイ
ンターネットアドレスです。イントラネットアドレスを使用して RDS インスタンスに接続するに
は、ECS に MySQL クライアントをインストールする必要があります。
- -P: ポート番号。
- -u: RDS データベースアカウント。
18
ApsaraDB for RDS
クイックスタート (MySQL)
- -p: RDS データベースアカウントのパスワード。
19