ヤマムギ

growing hard days.

*

Aurora Serverless Data APIを有効にしてLambdaからクエリを実行

      2021/09/28

Aurora Serverless作成

MySQLを作成しました。
作成時にData APIを有効にしました。

LambdaのIAMロール

IAMロールに設定するIAMポリシーです。
rds-dataは、RDSDataServiceのAPIアクションを許可する必要があるのですね。
今回の検証ではExecuteStatementのみでOKです。
ExecuteSqlというのを足してますが、これはboto3のexecute_sqlを実行してみたかったのですが、結果から言うとexecute_sqlは非推奨でした。

他にはSecrets Managerへの権限が必要です。

Secrets Manager

Aurora Serverlessで作成したMySQLに対してシークレットを作成しようと思ったらできてました。
Data APIに必須だからですかね。
便利ですね。

Lambda関数

コードを短くするためと再利用の必要がなかったので直接書いてますが、必要に応じて変数化しますよね。
デモ用のコードです。

An error occurred (BadRequestException) when calling the ExecuteSql operation: This API is deprecated and not available. Use ExecuteStatement API instead

ExecuteSqlは非推奨なのでExecuteStatementを使用しましょうというエラーでした。

ということでExecuteStatement版です。

成功しました。

こんなレスポンスでした。


最後までお読みいただきましてありがとうございました!

「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。

「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。

「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。

「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。

「AWSではじめるLinux入門ガイド」という本を書きました。

 - AWS , , ,

ad

ad

  関連記事

Well-Architected Tool レンズヴァージョンアップ

当ブログのWell-Architectedレビューを久しぶりにやろうと思い、We …

プライベートサブネットのEC2でセッションマネージャを使うようVPCエンドポイントを構成する

インターネットゲートウェイへのルートがないルートテーブルに関連付けられたプライベ …

Amazon Location Service入門ワークショップ-ジオコーディング

ジオコーディングにより住所を緯度経度に変換したり、逆に緯度経度から住所を求めたり …

Amazon EC2(Amazon Linux 2)にRedmine3.4をインストール

久しぶりに新しい環境でRedmineを構築したくなり、せっかくなのでAmazon …

AlexaにAWSの最新Feedを読み上げてもらう(Lambda Python)

年末にAmazon Echo Dotを購入しましたので、練習がてらAlexaスキ …

AWS CodeDeployからEC2 Auto Scalingにデプロイするチュートリアル

公式チュートリアルチュートリアル: アプリケーションを CodeDeployグル …

RDSのスナップショットをS3へエクスポートが日本語マネジメントコンソールでもできるようになってました

RDSスナップショットをS3にエクスポートする新機能を試そうかと思ったのときは、 …

「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト – プロフェッショナル」を執筆しました

「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテク …

EKS「現在の IAM プリンシパルは、このクラスター上の Kubernetes オブジェクトにアクセスできません」

マネジメントコンソールでクラスターのオブジェクトを見ようと、リソースの名前空間や …

ACM(AWS Certificate Manager)の承認メールを受け取るためにAmazon SESを設定する

何のためでもいいのですが、ドメインは持っているけど、そのドメイン宛にメールを送ら …