클라우드응용SW개발

[Cloud] 4주차-4. MySQL 데이터베이스로 메모 앱 만들기 실습

tryinto_gmlt 2026. 4. 7. 05:38

⭐ 메모 앱 만들기 실습

Python과 MySQL 데이터베이스를 연동하여, 사용자가 입력한 메모를 저장하고 조회하는 간단한 메모 관리 프로그램을 구현한다.

 

1) MySQL Workbench를 열어

"notes_db" 스키마를 생성하고, set as default schema 설정을 해준다.

그 다음, 메모를 저장할 테이블을 생성하기 위해 아래 쿼리를 실행시킨다.

*생성된 테이블을 확인하기 위해 오른쪽 클릭 "refresh all" 누르기

CREATE TABLE notes(
	id INT AUTO_INCREMENT PRIMARY KEY,
    title VARCHAR(255) NOT NULL,
    note TEXT NOT NULL,
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
  • id: 자동 증가하는 기본키 설정
  • title: 제목 저장, 최대 255자, NULL 불가
  • note: 내용 저장, NULL 불가
  • created_at: 생성 시간 자동 저장 (현재 시간 기본값)

 

2) 터미널을 열어 리눅스 서버와 연결한 후,

 pip install mysql-connector-python 명령어로 패키지를 설치한다.

MySQL Connector: Python에서 MySQL 데이터베이스에 연결하고 조작하기 위한 라이브러리

- Oracle에서 공식 지원하는 라이브러리
- 순수 Python으로 작성되어 추가 설치(의존성) 불필요
- 다른 라이브러리에 비해 상대적으로 속도가 느림

 


3) vi mysql-test.py 명령어로 파이썬 파일을 생성하고,

MySQL 데이터베이스에 연결하고 연결 상태를 확인하는 아래 코드를 작성하고, 저장(:w)한다.

import mysql.connector

# Connect to database()
def connect_to_db():
    return mysql.connector.connect(
            host="mySQL 서버 엔드포인트",
            user="사용자 이름",
            password="비밀번호",
            database="데이터베이스 이름"
        )

conn = connect_to_db()
print(conn)

 

4) Azure Portal에서 MySQL 서버의 네트워킹 설정으로 들어가 방화벽 규칙을 추가한다.

시작 IP 주소 = 종료 IP 주소 = 리눅스 서버의 공용 IP 주소

 

5) 터미널을 새로 열어, 다시 ssh로 접속하여

python3 mysql-test.py 명령어로 파이썬 파일이 정상 실행되는 것을 확인한다.

 

6) 정상 실행된다면, 사용자 입력을 받아 MySQL 데이터베이스에 데이터를 저장하고

연결을 종료하는 아래 코드를 작성하고 저장한다.

import mysql.connector

# Connect to database()
def connect_to_db():
    return mysql.connector.connect(
            host="mySQL 서버 엔드포인트",
            user="사용자 이름",
            password="비밀번호",
            database="데이터베이스 이름"
        )

conn = connect_to_db()
cursor = conn.cursor()

# Get note input from the user
title = input("Enter the title of your note: ")
note = input("Enter the content of your note: ")

# Insert the note into the database
insert_query = "INSERT INTO notes (title, note) VALUES (%s, %s)"
cursor.execute(insert_query, (title, note))

# Commit the changes
conn.commit()

print(f"Note '{title}' added successfully!")

# Close the connection
cursor.close()
conn.close()

print(conn)

 

7) 다시 파이썬 파일을 실행시켜, 메모 제목과 내용을 입력한다. 

 

8) MySQL Workbench에서 아래 쿼리를 통해 생성된 메모를 확인한다.

SELECT *
FROM notes