본문 바로가기

프로그래밍 언어/파이썬

파이썬 MySQL 기본 설정과 데이터베이스 연동

파이썬 MySQL 기본 설정과 데이터베이스 연동

MySQL은 세계에서 가장 널리 사용되는 오픈 소스 관계형 데이터베이스 관리 시스템 중 하나로, 다양한 웹 애플리케이션에서 데이터 관리를 위해 사용됩니다. 파이썬(Python)을 활용해 MySQL 데이터베이스와 연동하면 강력한 데이터 처리 및 분석 기능을 구현할 수 있습니다. 이 가이드에서는 파이썬 환경에서 MySQL을 설치하고, 기본적인 설정과 데이터베이스 연동 방법을 살펴보겠습니다.

 

 

 

 

MySQL 설치 및 기본 설정

먼저, MySQL 서버를 설치하고 기본 설정을 진행해야 합니다. 리눅스나 macOS 환경에서는 패키지 관리자를 이용해 MySQL을 설치할 수 있으며, Windows에서는 공식 설치 프로그램을 사용할 수 있습니다. 설치 후, mysql_secure_installation 명령어를 사용해 기본 보안 설정을 완료하세요.

 

 

파이썬 MySQL 커넥터 설치

파이썬에서 MySQL에 접근하기 위해서는 MySQL 커넥터를 설치해야 합니다. 이 커넥터는 MySQL 서버와 파이썬 간의 통신을 가능하게 해줍니다. 가장 널리 사용되는 패키지는 mysql-connector-python으로, pip 명령어를 통해 쉽게 설치할 수 있습니다:

pip install mysql-connector-python

 

 

MySQL 데이터베이스와 파이썬 연동

MySQL 데이터베이스와 파이썬을 연동하려면 먼저 MySQL 서버에 연결해야 합니다. 이를 위해 MySQL 커넥터의 connect() 메서드를 사용합니다. 데이터베이스 연결이 성공하면, 쿼리를 실행하고 데이터를 조작할 수 있습니다.

 
import mysql.connector

# MySQL 서버에 연결
conn = mysql.connector.connect(
    host="localhost",
    user="your_username",
    password="your_password",
    database="your_database"
)

# 커서 생성
cursor = conn.cursor()

# 쿼리 실행 예시
cursor.execute("SELECT * FROM your_table")

# 결과 가져오기
result = cursor.fetchall()
for row in result:
    print(row)

# 연결 종료
conn.close()
            

 

 

 

 

기본 CRUD 연산

파이썬을 사용해 MySQL에서 기본적인 CRUD(생성, 읽기, 업데이트, 삭제) 연산을 수행할 수 있습니다. 예를 들어, 데이터를 삽입하려면 INSERT 문을, 데이터를 읽으려면 SELECT 문을 사용합니다.

 
# 데이터 삽입
cursor.execute("INSERT INTO your_table (column1, column2) VALUES (%s, %s)", (value1, value2))
conn.commit()

# 데이터 업데이트
cursor.execute("UPDATE your_table SET column1 = %s WHERE column2 = %s", (new_value1, value2))
conn.commit()

# 데이터 삭제
cursor.execute("DELETE FROM your_table WHERE column1 = %s", (value1,))
conn.commit()
            

 

 

트랜잭션 관리

MySQL에서는 트랜잭션을 통해 데이터베이스 작업을 안전하게 수행할 수 있습니다. 트랜잭션은 여러 데이터베이스 작업을 하나의 작업 단위로 묶어 처리하며, 작업이 모두 성공적으로 완료되면 commit()을 호출하여 변경 사항을 저장합니다. 실패 시에는 rollback()을 호출하여 이전 상태로 되돌립니다.


try:
    conn.start_transaction()
    
    cursor.execute("INSERT INTO your_table (column1, column2) VALUES (%s, %s)", (value1, value2))
    cursor.execute("UPDATE your_table SET column1 = %s WHERE column2 = %s", (new_value1, value2))
    
    conn.commit()
except:
    conn.rollback()
finally:
    conn.close()
            

 

 

결론

이 가이드에서는 파이썬(Python)으로 MySQL을 시작하는 방법을 다루었습니다. 기본적인 설치와 설정부터 데이터베이스 연동, CRUD 연산, 그리고 트랜잭션 관리까지 다루며, 실제 프로젝트에서 사용할 수 있는 기초적인 기술을 익혔습니다. 이러한 기초를 바탕으로 더 복잡한 데이터베이스 작업을 수행하며, 파이썬과 MySQL을 활용한 애플리케이션을 개발해보세요.