본문 바로가기
컴퓨터 활용/노년에 즐기는 코딩

Django에서 MySQL 연결 여부 확인하는 방법

by easyfly 2025. 7. 5.
반응형

 

Django에서 MySQL 연결 여부 확인하는 방법

Django 프로젝트를 운영하다 보면 개발 단계에서는 SQLite를 사용하다가, 실제 배포나 서비스 환경에서는 MySQL 같은 관계형 데이터베이스를 연결하는 경우가 많습니다. 그렇다면, 현재 내 Django 프로젝트가 정말 MySQL에 연결되어 있는지를 확인하려면 어떻게 해야 할까요?

 


1. settings.py에서 데이터베이스 설정 확인

Django의 데이터베이스 연결 설정은 settings.py 파일에 정의되어 있습니다. 해당 파일을 열고 DATABASES 항목을 찾아보세요.

▷ SQLite 사용 예시

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': BASE_DIR / 'db.sqlite3',
    }
}

이와 같이 설정되어 있다면 현재는 SQLite를 사용하고 있는 것입니다.

▷ MySQL 사용 예시

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'mydatabase',
        'USER': 'myuser',
        'PASSWORD': 'mypassword',
        'HOST': 'localhost',  # 또는 MySQL 서버 주소
        'PORT': '3306',
    }
}

이와 같은 설정이 되어 있다면 MySQL 데이터베이스를 사용 중인 것으로 볼 수 있습니다. 그러나 실제 연결 여부는 추가로 확인이 필요합니다.

'settings.py'에서 확인된 결과


2. Django 쉘에서 dbshell 명령어로 확인

다음으로 터미널(또는 code-server의 터미널)에서 다음 명령을 입력합니다.

python manage.py dbshell

▶ 연결 결과 해석

  • MySQL 연결이 정상일 경우
    아래와 같은 MySQL 콘솔이 실행됩니다:
  • mysql>
  • SQLite 사용 중일 경우
    SQLite 셸이 바로 열리며 아래와 같은 프롬프트가 보입니다:
  • SQLite version 3.x.x Enter ".help" for usage hints.
  • 연결 오류가 발생하는 경우
    mysqlclient 패키지가 없거나, 사용자 인증 정보 오류, MySQL 서버 접근 제한 등이 발생하면 아래와 같이 오류 메시지가 출력됩니다:
  • CommandError: You appear not to have the 'MySQLdb' distribution installed...

이 경우는 아직 MySQL로 연결되지 않았거나, 드라이버나 설정이 부족한 상태입니다.

MySQL 사용이 정상 상


3. 연결된 데이터베이스 엔진 직접 확인

Django 쉘을 열고 다음과 같이 입력하면 현재 어떤 DB 엔진을 사용 중인지도 알 수 있습니다.

python manage.py shell
from django.db import connection
print(connection.settings_dict['ENGINE'])

▶ 결과 예시

  • 'django.db.backends.sqlite3' → SQLite 사용 중
  • 'django.db.backends.mysql' → MySQL 사용 중


4. mysqlclient 설치 여부 확인

MySQL에 연결하기 위해서는 Python에서 MySQL을 다룰 수 있는 드라이버가 필요합니다. Django는 mysqlclient를 주로 사용합니다. 아래 명령으로 설치 여부를 확인하거나 설치합니다:

pip install mysqlclient

설치 후에도 연결 오류가 발생한다면, libmysqlclient-dev, default-libmysqlclient-dev 등의 시스템 패키지가 필요할 수 있으니 함께 설치하세요.


마무리

Django 프로젝트가 MySQL과 연결되어 있는지를 확인하는 가장 확실한 방법은 settings.py 설정 확인dbshell, connection 객체 조회입니다. SQLite와 달리 MySQL은 외부 서버를 사용하는 경우가 많기 때문에 사용자명, 비밀번호, 포트, 방화벽 설정까지 꼼꼼히 확인해야 합니다.

반응형

댓글