이 글은 24.01.23에 본인 벨로그에 작성했던 글을 옮겨 온 것이다.
Python with MySQL
환경설정
- mysql connector 설치하기
pip install mysql-connector-python 실행
본인은 여러 번 설치하느라 이미 설치되어있다는 메시지가 뜬다.
mysql.connector import하기
import mysql.conenctor
MySQL 연결
MySQL에 연결 할 수도, 특정 DB에 연결할 수도 있다.
=> 특정 DB에 연결하고자 하는 경우, database = 'dbname'을 추가 해주면 된다.
(1) local MySQL에 연결
localdb = mysql.connector.connect(
host = 'local',
user = 'username',
password = 'password'
)
(2) AWS RDS에 연결
remote = mysql.connector.connect(
host = 'endpoint',
port = 'portnumber
user = 'username',
password = 'password'
)
연결 해제
connector.close()
mysql server를 다 사용한 후에는, 반드시 close 해 주도록 하자!
쿼리 실행하기
- mysql 서버에 연결 후, connection.cursur()로, 명령을 수행할 커서를 만든다.
- cursor.execute(쿼리문) 으로 쿼리 실행
(1) AWS RDS의 'dbname'이라는 DB에 연결
remote = mysql.connector.connect(
host = 'database-1.c5seeumg0dko.us-east-1.rds.amazonaws.com',
port = 3306,
user = 'admin',
database = 'dbname',
password = 'yourpassword'
)
(2) 해당 DB에 sql_file이라는 table 생성
cur = remote.cursor()
cur.execute('create table sql_file(id int, filename varchar(16))')
# aws rds 서버
remote.close()
잘 생성되었다!
이번엔 테이블을 삭제해보자
역시 "sql 서버 연결 -> 커서 생성 -> 쿼리 수행 -> 연결 해제" 의 동일한 과정을 따른다.
cur = remote.cursor()
cur.execute('drop table sql_file')
remote.close()
잘 삭제되었다!
SQL file 실행하기
쿼리 실행 프로세스와 동일하다.
sql 서버 연결 -> 커서 생성 -> 작업 수행 -> 연결 해제.
다만, 이번엔 쿼리 수행이 아닌 SQL 파일 실행이므로, 아래와 같이 SQL 파일을 열고 읽는 코드를 중간에 추가해주어야 한다.
sql_file = open('filename.sql').read()
위 SQL 파일을 실행해 볼 것이다.
# 여기서는 생략했지만, 당연히, sql에 연결을 먼저 해야 한다.
cur = remote.cursor()
sql_file = open('test03.sql').read()
cur.execute(sql_file)
remote.close()
잘 생성되었다!
'STUDY > SQL, DB' 카테고리의 다른 글
[MySQL] INSERT 함수 (0) | 2024.04.04 |
---|---|
[MySQL] Scalar Functions (0) | 2024.03.19 |
[MySQL] CONCAT / SQL file / backup, restore (0) | 2024.03.19 |
[MySQL] JOIN (0) | 2024.03.19 |
[DB] DB / DB 생성 / SQL 명령 (0) | 2024.03.19 |