博主头像

297 千锋Python教程:2 5 1 安装MariaDB

外来客 • 2026-08-27 11:42:28

分享
𝕏 f
声明:本文为对公开视频内容的摘要整理, 未经本站独立核实,可能与原视频存在出入,不代表本站立场、观点或建议; 观点与版权归原作者及原平台所有。 如涉及版权问题,请联系我们,核实后立即删除。 [ 免责声明 ]

🗄️ 数据库选型与分类

  • 课程计划讲解关系型与非关系型数据库,并预先安装环境。
  • 关系型数据库排名:Oracle 排第一,MySQL 排第二。Oracle 因价格昂贵,一般公司较少使用;MySQL 原为开源,后被 Oracle 收购。
  • 非关系型数据库排名:MongoDB 排第五,Redis 排第六。MongoDB 为文档数据库,适合存储低价值海量数据;Redis 为键值对(KV)数据库,读写性能极快,适合做高速缓存。
  • 此外还提及 Elasticsearch,属于文档数据库,适合做复杂的搜索引擎。
  • 关系型数据库通过二维表(行和列)保存数据,能保护数据完整性与一致性,是业务落地的首选;非关系型数据库更适合大数据场景。

📦 MariaDB 与 MySQL 的关系

  • 由于 MySQL 被 Oracle 收购,原作者担心其不再免费或开源,因此分出一个分支版本 MariaDB。
  • MariaDB 与 MySQL 5.7 版本大致相同,功能兼容。
  • 建议安装 MariaDB 而非直接安装 MySQL,因为 MariaDB 可通过包管理器快速安装,而 MySQL 官网下载 RPM 包速度慢且依赖项处理麻烦。
  • 若需使用 MySQL 8.0 版本,需从官网下载 RPM 包安装,但当前客户端工具对 8.0 支持存在小问题,故暂不采用。

🛠️ 安装步骤与命令

  • 使用 YUM 包管理工具安装,需同时安装服务端和客户端。
  • 安装命令:`yum install -y mariadb mariadb-server`。
  • 启动服务命令:`systemctl start mariadb`。
  • 检查端口:使用 `netstat -nAP | grep 3306` 确认服务是否占用默认端口 3306。
  • 进程名称:虽然启动的是 MariaDB,但实际运行的进程名为 `mysqld`。
  • 停止服务命令:`systemctl stop mysqld` 或 `systemctl stop mariadb`。
  • 设置开机自启命令:`systemctl enable mariadb`。
  • 连接数据库:使用 `mysql -uroot -p` 命令,其中 `-u` 指定用户,`-p` 提示输入密码。

⚙️ 守护进程(Daemon)概念解析

  • 进程名末尾的 `d` 代表 Daemon(守护进程),如 `mysqld`、`httpd`。
  • 守护进程特性:随系统启动而启动,随系统关机而停止,不会阻止系统关机。
  • 非守护进程特性:若仍在运行,会阻止系统关机。
  • 代码演示:通过 Python 多线程程序对比。
  • 普通线程:主线程结束后,若子线程有死循环,程序不会停止。
  • 守护线程:设置 `daemon=True` 后,主线程结束,子线程随之停止,程序正常退出。
  • 结论:数据库服务作为守护进程,确保系统关机时能正常终止,不阻碍关机流程。

⚠️ 注意事项与常见问题

  • 避免在 Windows 系统下安装数据库,因为一旦安装失败,重装极其困难,建议部署在 Linux 或 Unix 服务器上。
  • 安装 MySQL 时若选择 RPM 包,需手动处理依赖项,过程繁琐,故推荐 MariaDB。
  • 默认情况下,MariaDB 安装后可能未设置密码,可直接登录,建议后续修改密码以增强安全性。
  • 客户端工具 `mysql` 已随服务端一同安装,可用于命令行连接数据库。

0 条评论

发表评论

请先 登录 后参与讨论。