본문 바로가기

interest/Others

예전에 작성한 Django 프로젝트 살리기 - 해결한 에러 정리

요즘에 취업각을 위해 GitHub을 좀 관리하고 있습니다. 새로운 프로젝트를 시작하기보다는 예전 프로젝트를 실행시켜보고 코드를 리팩토링하거나 README.md 파일을 정리하는 정도입니다.

 

최근에는 작년에 나간 해커톤 프로젝트인 noNoise를 정리하는데, 백엔드 서버를 Django로 개발한 데다 데이터를 넘겨줄 때 REST API를 사용했었습니다ㅠㅠ그땐 잘 몰랐습니다. 최근에 Django 공부하면서 코드를 다시 실행해봤는데, 그 때 발생한 에러를 정리해봤습니다.

noNoise 프로젝트 깃허브 링크

 

먼저 Unknown MySQL server host 에러입니다.

django.db.utils.OperationalError: (2005, 
"Unknown MySQL server host 'db.ci5xkq0xyo3b.ap-northeast-2.rds.amazonaws.com' (0)")

에러화면

예전에 개발한 프로젝트여서 이미 그때 사용한 aws rds 서버는 사라진 지 오래입니다.

그래서 제 노트북에 깔려있는 mysql 서버를 연결해줬습니다.

그러기 위해서 프로젝트 이름/settings.py의 DATABASES를 변경했습니다.

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'hackathon',
        'USER': 'root',
        'PASSWORD': '123456',
        'HOST': '127.0.0.1', 
#        'HOST': 'localhost', # 에러남
        'PORT': '3306',
    }
}

그러고 나서 실행시켜보니 또 에러가 났습니다.

django.db.utils.OperationalError: (2002, 
"Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)")

이번에는 mysql 접속 에러인데 소켓 심볼릭 링크부터 구글 검색해서 나온 웬만한 건 다 해봤는데 해결이 안 되다가, stackoverflow에서 찾아보니 HOST를 localhost가 아니라 "127.0.0.1"로 선언해줘야 하는 거였습니다.

괜히 겁나 삽질했습니다.

 

그리고 Unknown database 에러가 났습니다.

django.db.utils.OperationalError: (1049, "Unknown database 'hackathon'")

이건 제 mysql database에 hackathon이라는 database가 없어서 생긴 에러입니다.

create database hackathon을 하고 실행시키니 문제없이 Django 서버가 실행되었습니다.

 

실행 화면

 

예전에 작성한 코드를 보면 참 알아보기 힘들게 짰다라는 생각이 듭니다. 1년도 안됐지만 그 사이에 실력이 는 게 뿌듯하면서도 그때그때 좀 더 관심을 갖고 공부했다면 어땠을까라는 생각이 드네요.

 

위 프로젝트도 6명에서 나간 해커톤인데 제가 모바일 앱만 담당해서 그 때 서버에 아예 관심이 없고 데이터만 받아오면 된다는 생각에 협업하는데 문제가 있었습니다. 이번에 공부했던 걸 알았더라면 그 때 피할 수 있었던 삽질들이 생각나네요.. 프론트엔드 개발을 희망하지만, 백엔드 공부도 열심히 해야겠습니다.


잘못된 내용이 있다면 언제든지 댓글이나 메일로 알려주시면 감사하겠습니다.

이 포스팅이 도움이 되었다면 공감 부탁드립니다.

궁금한 점은 언제든지 댓글 남겨주시면 답변해드리겠습니다:D