我正在学习 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 Workbench。有关如何将 Flask 应用连接到新设置的数据库的信息,这是一个教程你可能会觉得有帮助。按照本教程,你的数据库软件和数据库数据将运行并存储在运行 Python Flask 代码的同一台机器上。
我不太明白你的意思数据库如何通过互联网存储和访问“但这里有一些可能有用的说明。您的网站访问者将与您的 Flask Python 代码进行交互,而 Flask Python 代码又将与 MySQL 进行交互。这就是您的网站如何访问存储在数据库中的数据。您绝对可以不是希望您的访问者能够直接与服务器上运行的 MySQL 软件进行交互。如果你想要远程访问 MySQL 以进行管理,设置方法如下。
希望这些信息有帮助!
答案2
我希望知道如何将 MySQL 融入我的网站。
简而言之,您可以像安装任何其他应用程序一样,在您想要运行它的任何计算机上安装 MySQL,无论计算机使用什么操作系统。这意味着.zip
在 Windows 上安装 MSI 安装程序或存档,.dmg
在 MacOS 上可能安装存档.deb
,在 Linux 等上安装.rpm
、tar.xz
等文件。
如果你希望,你可以在这里下载 MySQL 的社区版本。请注意,对于非 Windows 系统,使用平台的包管理器安装 MySQL 可能更容易/更好(如果可能)。您可能还需要安装适用于 Python 的 MySQL 连接器或者连接 MySQL 的另一种方法从与 Python/Flask 安装相同的计算机上的 Python 开始。
安装 MySQL 后,您需要确保它作为计算机操作系统的服务运行。此服务通常使用的端口是 3306。这允许第三方应用程序或脚本(如 Python/Flask)在该端口上向 MySQL 发出请求(即向 MySQL 发送数据库查询并接收回复 [数据])。
这意味着你很可能会:
在 Flask 中编写代码,当访问者(自己或代表访问者)连接到您的网站时,从您的 Flask 应用程序向 MySQL 发出请求。
编写更多代码来处理这些请求的结果。
编写更多代码以使用您处理的数据根据请求结果向访问者返回信息。
由于你正在使用 Flask,你可能需要看看Flask-SQLAlchemy。我不是 100% 确定,但这可能会消除对其他连接器的需求(见上文)。
MySQL 与 Python/Flask
需要明确的是,MySQL 完全独立于 Python 或 Flask 运行。即使系统上没有 Python/Flask,您也可以安装和运行 MySQL。虽然在安装 Python/Flask 的同一台计算机上运行 MySQL 没有什么问题,但 MySQL 也可以在本地网络或甚至网络之外的单独计算机上运行(尽管最后一种选择对安全性不利)。只要 Python/Flask 可以通过端口 3306 向 MySQL 发送查询,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 应用将处理该数据,然后将处理后的信息返回给访问者(通常在网页中)。