AWS 에 github 에서 파일을 복제하고 장고를 실행시키기 위해 runserver 했을때 sqlite3 버전이 맞지 않아서 오류가 나는 경우가 많다.
python 이나 python3 으로 실행할때 서로 다른 오류가 발생하는데 이때 python3 버전으로 진행하자 구버전은 이제 안녕~!
버전이 맞지 않으면 맞는 버전을 다운로드 받아서 적용하면된다.
- sqlite 사이트 다운로드 주소 확인
- 파일다운
- 파일설치
- 라이브러리 이동
- 장고 runserver 실행
Sqlite 사이트 다운로드 주소 확인
https://sqlite.org/download.html
사이트에서 링크를 오른쪽 마우스 클릭해서 주소복사
파일다운
cd /opt/ #다운로드 위치로 이동
sudo wget [복사한 다운로드 주소]
sudo tar -zxf [다운로드된 파일명]
cd [압축풀린 폴더]
위에서 확인한 사이트에서 링크를 복사해서 내 aws ec2 서버로 다운로드하자
파일설치
다운로드 받은 파일을 실행하자
./configure
하지만 위의 파일을 실행했을때 오류가 발생할수 있다.
설치가 안되기 시작한 부분인 "checking for gcc...no" 라서 gcc 가 있는지 확인했으나 없었다. aws 에는 기본 설치가 아닐수 있으니 설치를 진행하자
yum install gcc
gcc 설치를 완료하고 다시 "./configure" 를 실행하니 잘 설치된다.
"./configure" 가 완료되면 아까 configure 가 있는 폴더에서
sudo make clean
sudo make -j 20
sudo make install
순서대로 위 명령을 실행하면 설치가 완료된다.
하지만 아직 끝은 아니다 설치는 됐으나 기존에 설치되어 있던 버전과 충돌이 날수 있다.
sqlite3 -- version
버전을 확인했을때 오늘 설치된 버전이 아니면 버전을 맞춰줘야한다.
라이브러리 이동
make install 로 설치된 파일은 /usr/local/lib/ 경로에 위치한다.
그리고 /usr/lib64 경로에 예전 버전의 실행파일이 존재한다.
기존파일은 "_bak" 를 붙여서 백업하고 새로 다운로드 받은 파일로 대체한다.
sudo /bin/cp -rf /usr/lib64/libsqlite3.so.0.8.6 /usr/lib64/libsqlite3.so.0.8.6_bak #파일백업
sudo /bin/cp -rf /usr/local/lib/libsqlite3.so.0.8.6 /usr/lib64/libsqlite3.so.0.8.6 #파일이동
위의서 봤다시피 "3" 버전의 파일은 버전은 달라도 동일한 파일 명을 가지고 있다. 헷갈리지말자
python3 # 파이션 콘솔실행
>>import sqlite3 #파이썬 파일 임포트
>>sqlite3.sqlite_version # 버전확인
위와 같이 최종적으로 버전을 확인해보자 다운로드 받은 버전과 동일하면 성공!!
장고 runserver 실행
manage.py 가 있는 폴더로 이동해서 아래 실행
python3 manage.py runserver 0:8080
정상적으로 서버가 실행되면 모두 완성!!
runserver 한번하려고 참 고생이 많았다. ㅠㅜ
'히치하이커 개발 > Django' 카테고리의 다른 글
[Django] HTML template 뼈대 만들기 - include, extends, block (0) | 2022.10.25 |
---|---|
[Django] static 폴더 설정 (0) | 2022.10.22 |
[Django] AWS 에 Git clone 하고, 서버실행 (0) | 2022.10.22 |
파이썬(Python) 가상환경 생성 및 실행 (0) | 2022.10.21 |
초간단 Django 프로젝트 시작 (0) | 2022.10.21 |
댓글