Django學習筆記《一》圖書管理系統專案掛載到阿里雲
專案示例
阿里雲伺服器域名
成果展示
如果不能訪問,可能埠已經關閉。
遇到的問題一大堆,大量使用網上文章,如有問題,進行留言聯絡。
簡單做一個記錄供自己查閱和檢索,以備下次伺服器搭建,這樣可以減少時間成本。
僅供個人記錄使用!本文不是教程
僅供個人記錄使用!本文不是教程
僅供個人記錄使用!本文不是教程
選擇的是cento7的雲系統
Linux yun 3.10.0-693.2.2.el7.x86_64 #1 SMP Tue Sep
12 22:26:13 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
首先預設沒有python3,用官網的安裝,安裝好了有沒有pip3沒辦法安裝django和pymysql。親測成功!
解決方案:https://www.aliyun.com/jiaocheng/527141.html
1.安裝依賴包bzip2安裝anaconda前,要先安裝個解壓縮工具bzip2,開啟阿里雲ECS例項的遠端連線,輸入下面命令,即可完成安裝:
yum install bzip2
2.安裝anaconda3(1)下載anaconda3安裝包,輸入命令:
wget https://repo.continuum.io/archive/Anaconda3-4.3.1-Linux-x86_64.sh
如果速度慢的話,可以在本地下載後,上傳到伺服器root目錄裡。
(2)安裝anaconda3,根據以下螢幕提示依次完成。
輸入命令:sh Anaconda3-4.3.1-Linux-x86_64.sh
慢敲回車ENTER鍵,47下左右,螢幕提示是否接受許可協議?輸入yes。
輸入指定安裝路徑:/usr/local/anaconda3
螢幕提示是否將安裝路徑寫入PATH環境變數,輸入yes,回車,安裝完成。
重新登入遠端連線,輸入python,預設即是python3.6版本啦,是不是極其簡單呢?
TIPS:1.安裝python的依賴包。參考連結
安裝python或者anaconda前,可能需要先安裝一些依賴包(例如解壓工具bzip2),否則會報錯。
已知的一些常用依賴包如下,可根據需要選擇安裝:
在 CentOS/RHEL/Fedora 下:
sudo yum install readline readline-devel readline-static
sudo yum install openssl openssl-devel openssl-static
sudo yum install sqlite-devel
sudo yum install bzip2-devel bzip2-libs
在 Ubuntu下:
sudo apt-get update
sudo apt-get install make build-essential libssl-dev zlib1g-dev
sudo apt-get install libbz2-dev libreadline-dev libsqlite3-dev wget curl
sudo apt-get install llvm libncurses5-dev libncursesw5-dev
答案是:Automake工具定義了下面的一組變數:
Directory variable Default value
prefix /usr/local
exec_prefix ${prefix}
bindir ${exec_prefix}/bin
libdir ${exec_prefix}/lib
…
includedir ${prefix}/include
datarootdir ${prefix}/share
datadir ${datarootdir}
mandir ${datarootdir}/man
infodir ${datarootdir}/info
docdir ${datarootdir}/doc/${PACKAGE}
…
而GUN下面絕大部分應用的編譯系統都是用automake。
於是乎,你看到的很多很多應用都安裝在了/usr/local/目錄下。
解決了python3的問題以後mysql預設也沒安裝!
到官網下載好rpm安裝包,附贈我的連結,下載名字的包
RPM Package, MySQL Server
安裝教程:https://www.cnblogs.com/shuangzikun/p/taotao_linux_mysql_install.html
較有參考價值的文章:https://blog.csdn.net/a774630093/article/details/79270080
從第四步開始
安裝的環境基本搞定了!再就是使用navicat連線阿里雲mysql
這裡需要配置的比較多,很容易出錯
首先開放埠,新增使用者,新增安全組,如果有防火牆也要關閉
https://blog.csdn.net/antony9118/article/details/77835715
首先建立安全組,然後再安全組中新增規則,如下所示,詳情可以參考官方文件
https://helpcdn.aliyun.com/document_detail/25471.html?spm=5176.doc25468.2.4.RfJyPU
新增規則之後,再用navicat連,報另一條錯誤
1045 access denied for user'root'@'localhost' using password yes
- 1
猜想是因為我本地使用root使用者登入navicat,而root使用者並沒有開放外部的訪問許可權,而是隻能localhost訪問
下一步登陸mysql資料庫,使用命令
果然root使用者的訪問許可權是localhost,並不能從外部進行訪問,需要手動賦權
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '******' WITH GRANT OPTION;
- 1
好了,這下又報錯
Your password does not satisfy the current policy requirements
- 1
也就是密碼強度不符合,我也是醉了,使用下面的命令可以檢視設定的密碼強度校驗規則
SHOW VARIABLES LIKE 'validate_password%';
- 1
果然是有很麻煩的校驗,網上有很多去除這個校驗的方法,不過都需要修改配置檔案然後重啟資料庫,個人覺得有點麻煩,還有一種臨時辦法可以去除密碼強度校驗(不過下次登入又得用一遍,好處是不需要重啟)
set global validate_password_policy=0;
- 1
好了,再輸入上面的對root使用者賦權的命令,大功告成
OK,到這裡,伺服器的3306埠也對外開放了,root使用者也可以從外部進行訪問了,navicat連線成功
大致到這裡解決了很多問題,當然有的問題,也要百度。下面說一下setting.py的配置
資料庫的配置
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'book_manager',這個是你資料庫的名字,連線上資料庫後,你要先建立
'USER': 'root',
'PASSWORD': 'xxxx',這個密碼是資料庫root使用者的密碼
'HOST': '39.107.87.114',這個host是你公網的host
'PORT': '3306'這個埠是資料庫預設埠,需要在安全組裡面開啟
}
}
連線配置
# SECURITY WARNING: don't run with debug turned on in production!
DEBUG = True
ALLOWED_HOSTS = ['*']這是允許所有使用者都可以訪問!因為是自己學習使用,所以也沒有那麼多嚴格的限制
怎麼執行專案
python manage.py runserver 0.0.0.0:8000
其他問題
MySQL 5.7 Access denied for user ‘root’@‘localhost’ (using password YES)
這個問題不要按照網上的操作進行設定,首先還是檢查自己密碼的問題
# service mysqld restart 報錯 Redirecting to /bin/systemctl restart mysqld.service
解決辦法
使用如下命令操作mysql:
systemctl restart mysqld.service
systemctl start mysqld.service
systemctl stop mysqld.service
ModuleNotFoundError: No module named '_ctypes’報錯
這個操作要進入root使用者!進行安裝
可參考網上教程:https://blog.csdn.net/qq_36416904/article/details/79316972
相關文章
- Django學習筆記《二》圖書管理系統Django筆記
- 圖書管理系統-專案介紹
- 實驗專案四:圖書管理系統
- Django教程 —— 初步完善圖書管理系統Django
- Django入門案例:圖書管理系統Django
- 阿里雲OSS專案搭建筆記阿里筆記
- 專案管理--PMBOK 讀書筆記(4)【專案整合管理】專案管理筆記
- 把django專案部署到阿里雲伺服器流程Django阿里伺服器
- django專案筆記1Django筆記
- 【django輕量級框架】django專案部署到阿里雲伺服器流程Django框架阿里伺服器
- 專案管理指南學習筆記-專案執行環境(1)專案管理筆記
- Django學習筆記(20)——BBS+Blog專案開發(4)Django如何使用BootstrapDjango筆記boot
- 作業系統——記憶體管理學習筆記作業系統記憶體筆記
- Django練習-學生管理系統案例Django
- 作業系統學習筆記:裝置管理作業系統筆記
- Gradle外掛學習筆記(一)Gradle筆記
- 阿里雲部署Django專案(nginx+uWSGI)阿里DjangoNginx
- 阿里雲伺服器部署django專案阿里伺服器Django
- 校園圖書管理系統開發-中小學智慧圖書管理系統開發
- django下載csv檔案筆記Django筆記
- libigl專案102學習筆記筆記
- Laravel 學習筆記一: 專案框架和配置檔案Laravel筆記框架
- 阿里雲負載均衡筆記阿里負載筆記
- 阿里雲部署Django專案(nginx+uWSGI)-2018.11阿里DjangoNginx
- Python學習筆記 - 下載圖片Python筆記
- 學舟圖書閱讀管理系統
- 阿里雲有獎體驗:如何通過ECS掛載NAS檔案系統阿里
- 學習筆記專案實踐(python)筆記Python
- 阿里雲centos7部署Django專案阿里CentOSDjango
- 《專案管理》-筆記2專案管理筆記
- 《專案管理》-筆記1專案管理筆記
- 阿里百秀後臺管理專案筆記 ---- Day01阿里筆記
- 分散式系統學習筆記分散式筆記
- 圖書管理系統2
- 阿里雲伺服器ECS掛載資料盤—linux系統阿里伺服器Linux
- 【學習筆記之作業系統原理篇】儲存管理筆記作業系統
- 數字人粒子系統學習筆記之一筆記
- Java學習筆記(一)上傳圖片到七牛雲的詳細實現流程Java筆記