登录
首页 >  文章 >  linux

Linux安装配置MariaDB详细教程

时间:2026-04-17 10:48:41 258浏览 收藏

本文详解Linux下高效、可靠安装配置MariaDB的核心要点,强调优先使用系统包管理器(yum或apt)而非手动编译或过时脚本,避免常见陷阱:服务未启动、mysql_secure_installation被跳过导致安全裸奔、socket路径不一致引发连接失败、权限与用户配置错误、以及新版中已废弃的mysql_install_db误用;同时厘清发行版差异、大小写敏感包名、官方仓库指定版本的正确方法,并指出绝大多数“装不上”“连不上”问题本质都聚焦在路径、用户、权限、socket四大关键点上——盯住它们,远比反复重装更省时有效。

Linux如何安装配置MariaDB_Linux MariaDB安装配置详解

mariadb 在大多数现代 Linux 发行版中已取代 mysql,但安装方式不统一,选错方法容易卡在初始化、权限或 socket 错误上。直接结论:优先用系统包管理器安装,除非你明确需要特定小版本(如 10.11.x)或离线部署

yumapt 安装最稳,但要注意发行版差异

系统包管理器安装省心,服务单元、默认路径、日志位置都已预设,适合生产环境快速上线。

  • RHEL/CentOS/AlmaLinux/Rocky Linux 8+:yum install -y mariadb-server mariadb(注意不是 MariaDB-server,大小写敏感)
  • Debian 12 / Ubuntu 22.04+:apt update && apt install -y mariadb-server mariadb-client
  • 安装后必须运行 systemctl start mariadbsystemctl enable mariadb,否则服务不启动
  • 别跳过 mysql_secure_installation —— 它不只是设 root 密码,还会禁用匿名用户、删除 test 库、禁止远程 root 登录,这步漏掉等于裸奔

mysql_install_db 已废弃,新版本必须用 mariadb-install-db 或 systemd 初始化

如果你从二进制包手动部署,或看到老教程里用 scripts/mysql_install_db,请立刻停手。MariaDB 10.2+ 已移除此脚本,强行调用会报错:

ERROR 1045 (28000): Access denied for user 'root'@'localhost'

正确做法是:

  • 确保 mysql 用户存在:useradd -r -s /sbin/nologin -M mysql
  • 指定数据目录并赋权:mkdir -p /appdata/mysql && chown -R mysql:mysql /appdata/mysql
  • 用新版初始化命令:mariadb-install-db --datadir=/appdata/mysql --user=mysql
  • 若提示 libaio.so.1: cannot open shared object file,补装:yum install -y libaio(CentOS)或 apt install -y libaio1(Debian/Ubuntu)

socket 连接失败(Can't connect to local MySQL server through socket)八成是路径不一致

这是最常被忽略的细节:客户端默认连 /var/run/mysqld/mysqld.sock/tmp/mysql.sock,而服务端实际监听的可能是 /var/lib/mysql/mysql.sock。不匹配就报错。

  • 先查服务端实际 socket 路径:sudo grep "socket" /etc/my.cnf /etc/mysql/my.cnf 2>/dev/null
  • 再查客户端默认路径:mariadb --help | grep "Default options"(看输出里的 socket 行)
  • 临时解决:加软链,例如服务端在 /var/lib/mysql/mysql.sock,就执行 sudo ln -sf /var/lib/mysql/mysql.sock /tmp/mysql.sock
  • 长期解决:统一改到 /var/run/mysqld/mysqld.sock,并在 [client][mysqld] 段都显式写 socket = /var/run/mysqld/mysqld.sock

官方仓库装指定版本时,mariadb_repo_setup 脚本必须带 --mariadb-server-version

直接跑 curl -LsS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | sudo bash 默认装最新稳定版,但可能不是你要的 10.11.x —— 官方脚本不会猜你的意图。

  • 装 10.11 系列:curl -LsS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | sudo bash -s -- --mariadb-server-version=10.11
  • 装 10.6:--mariadb-server-version=10.6,不能写成 10.6.010.6.x
  • 执行后务必 yum clean all && yum makecache(RHEL系)或 apt update(Debian系),否则仍会拉旧包
  • 包名大小写敏感:yum install MariaDB-server(首字母大写),不是 mariadb-server;APT 侧则仍是小写

真正麻烦的从来不是“怎么装”,而是“为什么装完连不上”“为什么初始化报错”“为什么改了配置不生效”。这些点全卡在路径、用户、权限、socket 四个地方,盯住它们比反复重装更有效。

理论要掌握,实操不能落!以上关于《Linux安装配置MariaDB详细教程》的详细介绍,大家都掌握了吧!如果想要继续提升自己的能力,那么就来关注golang学习网公众号吧!

资料下载
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>