AWS python(파이썬) RDS 데이터베이스 읽기 및 쓰기

2021. 6. 9. 06:15

AWS에서는 RDS(Relational Database Services)를 이용해서 기존에 잘 알려진 RDBMS를 사용할 수 있다. PostgreSQL, MySQL, MariaDB, ORACLE, Microsoft SQL Server, Amazon Aurora 등의 DB를 이용할 수 있다. 사용방법은 어렵지 않지만, 처음할 때는 모든지 생소하기 마련이다. 오늘은 AWS python(파이썬) RDS 데이터베이스 읽기 및 쓰기에 대해서 알아보도록 하겠다.

 

 

AWS 파이썬 RDS



파이썬에서 RDS를 사용할 수 있는 방법은 다양하다. sqlalchemy를 이용하는 방법도 있고, AWS wrangler를 이용할 수도 있다.

 


여기서는 Amazon Aurora DB를 이용하는 방법에 대해서 알아보도록 하겠다. 우선 psycopg2 패키지가 필요하다. 해당 패키지를 설치한 후에 DB연결을 하면 된다.

import psycopg2 as pg2

conn = pg2.connect("host=ARN주소 dbname=postgres user=사용자명 password=비밀번호 port=5432")

 

 

이후에는 다른 DB를 이용하는 것처럼 cursor와 execute를 이용해서 SQL을 날리면 된다.

cur = conn.cursor()
cur.execute("SELECT * FROM 테이블이름 LIMIT 10")
result_list = cur.fetchall() 

 

 

sqlalchemy를 이용하면 아래와 같다.

from sqlalchemy import create_engine

engine = create_engine('postgresql://사용자명:비밀번호@ARN주소:5432/DB명')

 

 

DB명을 잘 모르겠다면, 일단 postgres로 도전해 보기를 바란다. 이후에는 크게 다르지 않다.

result = engine.execute("SELECT * FROM 테이블이름 LIMIT 10")
result_list = result.fetchall() 

 

 

위의 2가지 방법은 큰 차이는 없으나, psycopg2를 이용하는 것을 추천한다. sqlalchemy는 패키지를 추가로 더 설치해야 되기 때문이다. 혹은 aws에서 제공하는 wrangler를 이용하는 것도 좋을 법한데 어떻게 사용하는지 아직 잘 모르겠다.

 

 

오늘은 AWS python(파이썬) RDS 데이터베이스 읽기 및 쓰기에 대해서 알아보았다. 필자의 블로그에는 다른 재미있는 내용도 많이 있으니 함 번 구경해주기를 바란다.

댓글()