参考资料

  1. Lsky(兰空图床)是一款开源的图床管理系统
  2. Memcached 是一个高性能、分布式的内存缓存系统
  3. Monica 是一款开源的个人关系管理(PRM)工具
  4. Hello-World 是一个最简单的 Docker 镜像
  5. rspamd 是一个快速、开源的垃圾邮件过滤系统
  6. DweebUI是一个基于Stable Diffusion WebUI的轻量级分支
  7. Perl是一种高级、通用、解释型动态编程语言
  8. Cloudreve 启用 JWT(JSON Web Tokens)加密通信

MariaDB 简介

MariaDB 是一个开源的关系型数据库管理系统,由 MySQL 的原始开发者 Monty Widenius 创建,旨在保持与 MySQL 的高度兼容性,同时提供更多功能和改进。

MariaDB 特点

  1. 兼容 MySQL:支持 MySQL 的协议、API 和命令,可无缝替代 MySQL。

  2. 高性能:优化了存储引擎(如 Aria、XtraDB、InnoDB),提升查询速度。

  3. 开源免费:遵循 GPL 许可证,无商业限制。

  4. 扩展功能:支持 JSON、GIS、动态列等高级特性。

  5. 高可用性:提供 Galera Cluster 实现多主复制。

  6. 安全性增强:支持更多加密选项和权限控制。

最新更新内容及时间

  • 最新稳定版:MariaDB 11.3.2(2024 年 3 月发布)

    • 改进查询优化器

    • 增强 JSON 功能

    • 修复安全漏洞

镜像下载地址

官网地址

https://mariadb.org/  

阅读文档地址

https://mariadb.com/kb/en/documentation/  

Docker 安装示例

docker run --name mariadb -e MYSQL_ROOT_PASSWORD=your_password -p 3306:3306 -d mariadb:latest

YAML 设置教程(以 Docker Compose 为例)

version: '3'
services:
  mariadb:
    image: mariadb:latest
    environment:
      MYSQL_ROOT_PASSWORD: your_password
      MYSQL_DATABASE: your_db
      MYSQL_USER: your_user
      MYSQL_PASSWORD: your_user_password
    ports:
      - "3306:3306"
    volumes:
      - ./data:/var/lib/mysql

常见错误及解决方法

  1. 无法连接数据库

    • 检查端口是否开放(默认 3306)。

    • 确认用户名和密码正确。

  2. 启动失败(权限问题)

    • 确保数据目录权限正确:  

      chown -R mysql:mysql /var/lib/mysql
  3. InnoDB 崩溃恢复

    • 若数据库异常关闭,尝试:  

      mysqld --innodb_force_recovery=1
  4. 内存不足

    • 调整 my.cnf 配置,优化 innodb_buffer_pool_size

  5. 字符集问题

    • my.cnf 中设置默认字符集:  

      [mysqld]
      character-set-server=utf8mb4
      collation-server=utf8mb4_unicode_ci