欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

將Django項(xiàng)目遷移到linux系統(tǒng)的詳細(xì)步驟

 更新時(shí)間:2023年03月15日 08:59:19   作者:id老貓  
這篇文章主要介紹了將Django項(xiàng)目遷移到linux系統(tǒng)的詳細(xì)步驟,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

Django項(xiàng)目配置修改

我們需要把原先的Django項(xiàng)目進(jìn)行修改才能更好地進(jìn)行項(xiàng)目遷移工作,首先需要修改的是settings.py文件。

截圖

由于項(xiàng)目上線之后不能讓用戶看到后臺的運(yùn)行邏輯,所以我們要把DEBUG改成False,把ALLOWED_HOSTS寫成‘*’,這樣是為了允許從不同主機(jī)進(jìn)行訪問。

由于linux中如果不加這句可能會(huì)出現(xiàn)文件找不到的情況,所以我們要把模板的路徑進(jìn)行拼接。

由于做Django項(xiàng)目肯定進(jìn)行過數(shù)據(jù)庫的同步,所以我們要把migrations中的同步文件刪除,以便在linux系統(tǒng)中的數(shù)據(jù)庫同步。

項(xiàng)目環(huán)境以及數(shù)據(jù)庫打包

首先我們需要把Django環(huán)境進(jìn)行打包。

我是用的是沙箱環(huán)境就直接進(jìn)入到沙箱環(huán)境中,然后執(zhí)行上述命令進(jìn)行打包。

mysqldump -u 用戶名 -p 數(shù)據(jù)庫名 表名1 表名2 >導(dǎo)出的sql文件名

然后把數(shù)據(jù)庫結(jié)構(gòu)導(dǎo)出成一個(gè)sql文件,這里需要注意的是,導(dǎo)出數(shù)據(jù)庫時(shí),不要把表全都導(dǎo)出,只導(dǎo)出自己創(chuàng)建的表即可。

然后我們可以通過xftp項(xiàng)目環(huán)境、sql文件以及自己的完整項(xiàng)目傳到linux上面。

linux系統(tǒng)中的配置

1、python3的安裝

linux是自帶python2的,我們不需要?jiǎng)h除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

這里如果安裝的是3.5版本的python,在使用manage.py命令時(shí)會(huì)報(bào)no module secrets錯(cuò)誤。

上述步驟做完之后我們可以看到當(dāng)前路徑下出現(xiàn)了一個(gè)python文件,我們進(jìn)入到此文件夾中進(jìn)行編譯安裝

這里我們默認(rèn)安裝在usr/loacl/python3下。

運(yùn)行結(jié)束之后執(zhí)行make && make install命令

然后進(jìn)行軟鏈接設(shè)置

ln -s /usr/local/python3/bin/python3 /usr/bin/python3
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3

直到這里我們就實(shí)現(xiàn)了python3和python2的共存,輸入python3和pip3就使用的是python3,輸入python和pip使用的就是python2.

2、第二步就是數(shù)據(jù)庫的配置

由于自centos7之后linux就不兼容mysql數(shù)據(jù)庫了,而是使用mariadb數(shù)據(jù)庫,所以我們也要使用mariadb數(shù)據(jù)庫,其實(shí)這兩個(gè)數(shù)據(jù)庫一模一樣,連命令都一樣,就是改了個(gè)名字。

我們只需要啟動(dòng)mariadb數(shù)據(jù)庫就可以了

systemctl start mariadb #啟動(dòng)mariadb數(shù)據(jù)庫
systemctl enable mariadb #開機(jī)啟動(dòng)mariadb數(shù)據(jù)庫

數(shù)據(jù)庫啟動(dòng)之后我們就可以使用mysql -uroot -p來進(jìn)入數(shù)據(jù)庫了

項(xiàng)目整合與配置

上述準(zhǔn)備工作都做完之后我們就可以在linux系統(tǒng)上配置我們的Django項(xiàng)目了

首先我們需要配置Django環(huán)境。

pip install -r package.txt

然后進(jìn)行數(shù)據(jù)庫同步,我們首先需要?jiǎng)?chuàng)建對應(yīng)的庫,然后執(zhí)行

這里在進(jìn)行數(shù)據(jù)庫匹配的時(shí)候可能會(huì)報(bào)錯(cuò)

raise ImproperlyConfigured(‘mysqlclient 1.3.13 or newer is required; you have %s.’ % Database.version)

  django.core.exceptions.ImproperlyConfigured: mysqlclient 1.3.13 or newer is required; you have 0.9.3.  

解決辦法:

C:\Python37\Lib\site-packages\django\db\backends\mysql(python安裝目錄)打開base.py,注釋掉以下內(nèi)容:        
if version < (1, 3, 13):          
 raise ImproperlyConfigured(‘mysqlclient 1.3.13 or newer is required; you have %s.’ % Database.version)

python3 manage.py makemigrations
python3 manage.py migrate

然后查看一下自己的數(shù)據(jù)庫是不是出現(xiàn)了對應(yīng)表,然后導(dǎo)入sql文件

source sql文件路徑

直到這里我們的Django項(xiàng)目就完成了遷移。

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論