집 >운영 및 유지보수 >리눅스 운영 및 유지 관리 >Django 프로젝트를 Linux 시스템으로 마이그레이션하는 방법
프로젝트 마이그레이션을 더 잘 수행하려면 원본 Django 프로젝트를 수정해야 합니다. 가장 먼저 수정해야 할 것은 settings.py 파일입니다.
프로젝트가 온라인 상태인 후 사용자는 백그라운드 실행 로직을 볼 수 없으므로 DEBUG를 False로 변경하고 ALLOWED_HOSTS를 ‘*’로 작성해야 합니다. .
리눅스에서는 이 문장을 추가하지 않으면 파일을 찾을 수 없기 때문에 템플릿 경로를 이어붙여야 합니다.
Django 프로젝트로 인해 데이터베이스가 동기화되어 있어야 하므로 Linux 시스템에서 데이터베이스 동기화를 원활하게 하려면 migrations에서 동기화 파일을 삭제해야 합니다.
먼저 Django 환경을 패키징해야 합니다.
샌드박스 환경을 사용하고 샌드박스 환경에 직접 진입한 후 위의 명령어를 실행하여 패키징합니다.
mysqldump -u 사용자 이름 -p 데이터베이스 이름 테이블 이름 1 테이블 이름 2 > 내보낸 sql 파일 이름
그런 다음 데이터베이스 구조를 sql 파일로 내보냅니다. 테이블을 추가하지 않고 모두 내보내고, 생성한 테이블만 내보냅니다.
그러면 xftp를 통해 프로젝트 환경, sql 파일 및 우리의 완전한 프로젝트를 Linux로 전송할 수 있습니다.
Linux는 python2와 함께 제공됩니다. python2를 삭제할 필요는 없으며 python2와 python3이 공존하도록 놔두기만 하면 됩니다.
먼저 python3의 종속성 패키지를 설치하세요
yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make -y
그런 다음 python3의 설치 패키지를 다운로드하세요
wget https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tar.xz
설치 패키지의 압축을 풉니다
tar -xvJf Python-3.6.2.tar.xz
여기서 Python 3.5 버전이 설치된 경우 관리를 사용할 때 모듈 비밀 없음 오류가 보고됩니다. .py 명령.
위 단계를 완료하면 현재 경로에 Python 파일이 나타나는 것을 볼 수 있습니다. 컴파일하고 설치하기 위해 이 폴더에 들어갑니다.
여기서는 기본적으로 usr/loacl/python3 아래에 설치합니다.
실행 후 make && make install명령
을 실행한 다음 소프트 링크를 설정하세요
ln -s /usr/local/python3/bin/python3 /usr/bin/python3 ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3
지금까지 우리는 python3과 python2의 공존을 깨달았습니다. python3을 사용하려면 python3과 pip3을 입력하고, python을 입력하세요. 사용할 pip는 python2입니다.
리눅스는 centos7부터 mysql 데이터베이스와 호환되지 않기 때문에 대신 mariadb 데이터베이스를 사용하므로 mariadb도 사용해야 합니다. 실제로 두 데이터베이스는 순서는 동일하지만 이름만 변경되었습니다.
mariadb 데이터베이스만 시작하면 됩니다
systemctl start mariadb #启动mariadb数据库 systemctl enable mariadb #开机启动mariadb数据库
데이터베이스가 시작된 후 mysql -uroot -p를 사용하여 데이터베이스에 들어갈 수 있습니다
위 준비가 완료되면 다음에서 실행할 수 있습니다. linux 우리의 Django 프로젝트는 시스템에 구성되어 있습니다
먼저 Django 환경을 구성해야 합니다.
pip install -r package.txt
그런 다음 데이터베이스 동기화를 위해 먼저 해당 라이브러리를 생성한 다음 실행해야 합니다.
데이터베이스 일치를 수행할 때 오류가 보고될 수 있습니다
raise ImproperlyConfigured(‘mysqlclient 1.3.13 이상이 필요합니다. % s.’ % Database.version)
django.core.Exceptions.ImproperlyConfigured: mysqlclient 1.3.13 이상이 필요합니다.
해결책:
C:Python37Libsite-packagesd 장고백 endmysql(Python 설치 디렉터리) base.py를 열고 다음을 주석으로 처리합니다.
if version raise ImproperlyConfigured(‘mysqlclient 1.3.13 이상이 필요합니다. %s이(가) 있습니다. ; % Database.version)
python3 manage.py makemigrations python3 manage.py migrate
그런 다음 해당 테이블이 데이터베이스에 나타나는지 확인한 다음 SQL 파일을 가져옵니다
소스 SQL 파일 경로
지금까지 Django 프로젝트가 마이그레이션을 완료했습니다.
위 내용은 Django 프로젝트를 Linux 시스템으로 마이그레이션하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!