MySQL コマンドラインクライアントからの SSL/TLS による Amazon RDS 上の MariaDB DB インスタンスへの接続 (暗号化)
MySQL 5.7 バージョン、MySQL 8.0 バージョン、または MariaDB バージョンを使用している場合は、mysql
クライアントプログラムのパラメータが若干異なります。
使用しているバージョンを確認するには、--version
オプションを指定しながら mysql
コマンドを実行します。次の例の出力では、MariaDB のクライアントプログラムが使用されていることが確認できます。
$ mysql --version mysql Ver 15.1 Distrib 10.5.15-MariaDB, for osx10.15 (x86_64) using readline 5.1
Amazon Linux、CentOS、SUSE、Debianなど、ほとんどのLinux ディストリビューションでは、MySQL をMariaDB に置き換えており、mysql
バージョンは MariaDB と同じものを使用しています。
SSL/TLS を使用して DB インスタンスに接続するには、以下のステップを実行します。
MySQL コマンドラインクライアントを使用して SSL/TLS で DB インスタンスに接続するには
-
すべての AWS リージョン で使用できるルート証明書をダウンロードします。
証明書のダウンロードについては、SSL/TLS を使用した DB インスタンスまたはクラスターへの接続の暗号化 を参照してください。
-
MySQL コマンドラインクライアントを使用して、SSL/TLS 暗号化を使用して DB インスタンスに接続します。
-h
パラメータは、DB インスタンスの DNS 名 (エンドポイント) に置き換えます。--ssl-ca
パラメータは、必要に応じて SSL/TLS 証明書のファイル名に置き換えます。-P
パラメータは、使用中の DB インスタンスのポートに置き換えます。-u
パラメータでは、マスターユーザーなどの有効なデータベースユーザーのユーザー名に置き換えます。プロンプトが表示されたら、マスターユーザーパスワードを入力します。次の例は、MariaDB で
--ssl-ca
パラメータを使用しながら、クライアントを起動する方法を示しています。mysql -h
mysql–instance1.123456789012.us-east-1.rds.amazonaws.com
--ssl-ca=global-bundle.pem
--ssl -P 3306 -umyadmin
-pSSL/TLS 接続で DB インスタンスのエンドポイントを SSL/TLS 証明書のエンドポイントと照合することを義務付けるには、次のコマンドを入力します。
mysql -h
mysql–instance1.123456789012.us-east-1.rds.amazonaws.com
--ssl-ca=global-bundle.pem
--ssl-verify-server-cert -P 3306 -umyadmin
-p次の例は、MySQL 5.7 以降で
--ssl-ca
パラメータを使用しながら、クライアントを起動する方法を示しています。mysql -h
mysql–instance1.123456789012.us-east-1.rds.amazonaws.com
--ssl-ca=global-bundle.pem
--ssl-mode=REQUIRED -P 3306 -umyadmin
-p -
プロンプトが表示されたら、マスターユーザーパスワードを入力します。
次のような出力が表示されます。
Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 31 Server version: 10.6.10-MariaDB-log Source distribution Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. MariaDB [(none)]>