PythonでAmazonRDSを操作してみた

2024/11/15

Python
AWS
AmazonRDS

PythonでAmazonRDSを操作してみたので手順をまとめました。

AmazonRDSとは

Amazon RDSは、Amazon Web Services(AWS)が提供するマネージド型リレーショナルデータベースサービスです。
これにより、データベースの設定、運用、スケーリングが簡単になり、開発者や運用者はデータベースの管理よりもアプリケーションの開発に集中できます。
Amazon RDS は、以下の主要なリレーショナルデータベースエンジンをサポートしています:

  • Amazon Aurora(MySQL および PostgreSQL 互換の高性能エンジン)
  • MySQL
  • PostgreSQL
  • MariaDB
  • Oracle Database
  • Microsoft SQL Server

##  AmazonRDSを操作する

import pymysql

# --------------------------------------------------
# AWS RDSクラス
# --------------------------------------------------
class AWSRDS:
    def __init__(self) -> None:
        self.connection = pymysql.connect(
            host='host-name',
            user='user-name',
            password='password',
            database='database-name',
            connect_timeout=10
        )

    def query(self):
        try:
            with self.connection.cursor() as cursor:
                sql = 'SELECT * FROM {table-name}'
                cursor.execute(sql)
                result = cursor.fetchall()
                return {
                    'statusCode': 200,
                    'body': result
                }
        except pymysql.MySQLError as e:
            return {
                'statusCode': 500,
                'body': f'Query execution failed: {e}'
            }
        finally:
            self.connection.close()

# --------------------------------------------------
# メイン関数
# --------------------------------------------------
def main(): 
    instance = AWSRDS()
    result = instance.query()
    print(result)

if __name__ == "__main__":
    main()

今回はここまでです。