본문 바로가기
Side Project/AWS와 Python으로 페이스북 챗봇 개발하기

[python] python으로 mysql connect 하기

by 잇서니 2020. 8. 29.
반응형

 

 

1. pymysql 패키지 설치

pip3 install pymysql

 

2. connection 정보를 변수에 저장하기

host = "mysql.hostname.com"
port = 3306
database = "test"
username = "sunny"
password = "sunny123"

연결할 mysql 서버의 host, port 를 저장한다.

또한 접근할 database명, user, password를 저장한다. 당연히 해당 user가 database 권한이 있어야 접근 가능하다.

 

3. connection 생성하기

conn = pymysql.connect(host, user=username, passwd=password, db=database, port=port, use_unicode=True, charset='utf8')
cursor = conn.cursor()

pymysql의 connect 메서드를 사용하여 DB에 접속한다.

접속에 성공하면 Connection 객체의 cursor 메서드를 호출하며 Cursor 객체를 가져온다.

Cursor는 Fetch 동작을 관리한다. 예를 들어, fetchall(), fetchone(), fetchmany() 등의 메서드를 사용하여 데이터를 DB 서버로부터 가져온 후, Fetch 된 데이타를 사용한다.

 

4. 쿼리 실행하기

query = "INSERT INTO artist_genres (artist_id, genre) VALUE ('2345', 'rock')"
cursor.execute(query)
conn.commit()

INSERT/UPDATE/DELETE 후에는 Connection 객체의 commit() 메서드를 사용하여 데이타를 확정 갱신한다.

 

conn.close()

Connection 객체의 close() 메서드를 사용하여 DB 연결을 종료한다.

 

최종 python 코드

import pymysql

host = "mysql.hostname.com"
port = "3306"
database = "test"
username = "sunny"
password = "sunny123"


def main():

    try:
    #DB Connection 생성
        conn = pymysql.connect(host, user=username, passwd=password, db=database, use_unicode=True, charset='utf8')
        cursor = conn.cursor()

    except:
        logging.error("")
        sys.exit(1)

	
    # cursor.execute("show tables")
    #print(cursor.fetchall())

    query = "INSERT INTO artist_genres (artist_id, genre) VALUE ('2345', 'rock')"
    cursor.execute(query)
    conn.commit()
    
    conn.close()
    
if __name__ == '__main__':
	main()

 

 

참고링크

http://pythonstudy.xyz/python/article/202-MySQL-%EC%BF%BC%EB%A6%AC

 

예제로 배우는 파이썬 프로그래밍 - MySQL 쿼리

1. MySQL DB 모듈 Python에서 MySQL 데이타베이스를 사용하기 위해 우선 Python DB API 표준을 따르는 MySQL DB 모듈을 다운받아 설치한다. MySQL DB 를 지원하는 Python 모듈은 여러 가지가 있는데, 여기서는 PyMyS

pythonstudy.xyz

 

반응형

댓글