我正在學習 Web 開發,並使用 python (flask) 以及 HTML 和 CSS 以及一些 JavaScript。我想知道如何將資料庫 (MySQL) 連接到我的網站以及它將儲存在何處以及如何儲存。我想知道如何將 MySQL 與我的網站合併,以及如何透過網路儲存和存取資料庫。感謝您分享你的知識。
答案1
我絕對不是 Flask 框架的專家,但我想我可以就 Flask 和 MySQL 如何協同工作的大局提供一些建議。我不確定您使用什麼作業系統來為您的網站提供服務,因此我將使用 Linux 作為範例。
簡單來說,Flask 是一個微框架,它使用 Python 來抽象化和連接前端(HTML、CSS、JavaScript)、後端資料庫(MySQL),並為您的網站提供服務,從而取代 Apache2 等傳統伺服器軟體。
Flask 負責為您的網頁提供服務,因此您無需安裝單獨的軟體,但 Flask 確實需要傳統的資料庫軟體,例如 MySQL。看一眼這一頁有關如何在 Ubuntu 上安裝 MySQL 的資訊。
您首先需要使用命令列或 GUI 應用程式設定資料庫和表,以存取電腦上執行的 MySQL。這是一個MySQL命令列備忘單。如果您喜歡使用 GUI 應用程式與資料庫交互,這是 MySQL 工作台。有關如何將 Flask 應用程式連接到新設定的資料庫的信息,這是一個教程你可能會發現有幫助。按照本教程,您的資料庫軟體和資料庫資料將在運行 python Flask 程式碼的同一台電腦上運行並儲存。
我不完全確定你的意思“如何透過互聯網儲存和存取資料庫「但這裡有一些可能會有所幫助的說明。您網站的訪客將與您的Flask python 程式碼進行交互,而程式碼又將與MySQL 進行交互。這就是您的網站存取資料庫中儲存的資料的方式。不是希望您的訪客能夠直接與您在伺服器上執行的 MySQL 軟體進行互動。如果你出於管理目的想要遠端存取 MySQL,這是如何設定的。
希望這些資訊有幫助!
答案2
我想知道如何將 MySQL 合併到我的網站中。
簡而言之,您可以將 MySQL 安裝在任何您想要運行它的電腦上,就像其他應用程式一樣,無論該電腦使用什麼作業系統。這意味著.zip
Windows 上的MSI 安裝程式或存檔,可能是.dmg
MacOS 上的存檔以及Linux 等的 、 等.deb
檔案.rpm
。tar.xz
如果你希望,您可以在此處下載 MySQL 的社群版本。但請注意,對於非 Windows 系統,使用平台的套件管理器來安裝 MySQL 可能會更容易/更好(如果可能)。您可能還需要安裝適用於 Python 的 MySQL 連接器或者連接 MySQL 的另一個選項在與 Python/Flask 安裝相同的電腦上使用 Python。
安裝 MySQL 後,您需要確保它作為電腦作業系統的服務運作。該服務通常運行的連接埠是 3306。
這意味著您很可能會:
在 Flask 中編寫程式碼,以便當訪客(單獨或代表訪客)連接到您的網站時,從 Flask 應用程式向 MySQL 發出請求。
編寫更多程式碼來處理這些請求的結果。
編寫更多程式碼以使用您處理的資料根據請求結果將資訊傳回給訪客。
既然你正在使用 Flask,你可能想看看Flask-SQLAlchemy。我不能 100% 確定,但這可能會消除對其他連接器的需求(見上文)。
MySQL 與 Python/Flask
需要明確的是,MySQL 完全獨立於 Python 或 Flask 運作。即使系統上沒有 Python/Flask,您也可以安裝和執行 MySQL。雖然在安裝 Python/Flask 的同一台電腦上執行 MySQL 沒有任何問題,但 MySQL 也可以在本地網路甚至網路外部的單獨電腦上運行(儘管最後一個選項對於安全性來說不太好)。只要Python/Flask可以透過ex向MySQL發送查詢。連接埠 3306,MySQL 實際安裝在哪裡並不重要。
MySQL配置
請注意,MySQL 可能需要一些配置才能以您想要的方式運作或可供 Python/Flask 使用。
在 Windows 上,MSI 安裝程式將引導您在安裝過程中完成 MySQL 的初始設定。看一下這個問題如果您需要一些關於在 Windows 上的安裝精靈中可能選擇的內容的基本提示。
如果您.zip
在 Windows 上使用該版本、使用非 Windows 版本或想要在初始安裝後進行任何更改,您可能需要編輯一個名為mysql.ini
.這是一個簡單的文字文件,但它包含 MySQL 用於運行的許多設定。如果對此文件進行任何更改,則需要重新啟動 MySQL 服務才能使變更生效。請注意,該檔案的位置取決於您的作業系統。
作為一個小警告,MySQL 最初可能會阻止來自本地主機以外的任何連線。如果您在另一台電腦或虛擬機器上安裝了 MySQL,這可能會發生問題。話雖如此,根據需要或認為合適允許非本地主機連線相對簡單。
資料庫將如何透過網路儲存和存取?
MySQL 資料庫儲存在MySQL 運行的伺服器上。重申一下,為了安全起見,您將希望 MySQL 在本地網路上的電腦上運行(無論它是否與您的 Python/Flask 應用程式在同一台電腦上)。
訪客將透過網際網路聯絡您的 Flask 實例,您的 Python/Flask 應用程式將向 MySQL 發出本機資料請求。 MySQL 會將數據傳回給您的 Flask 應用程序,您的 Flask 應用程式將處理該數據,然後將處理後的資訊傳回給訪客(通常在網頁中)。