Ubuntu\Kylin\UOS\openEuler\Debian 安装MariaDB 11.4.12
重要提示:
MariaDB二进制包 只有x86_64版本,其他架构请使用MySQL安装包。
以下是详细的步骤:
步骤 1:准备工作
(可选)更新系统并安装依赖 首先确保你的系统是最新的,并安装编译和运行 MariaDB 所必需的库。
sudo apt install -y wget tar nano psmisc创建系统用户和组 MariaDB 需要一个专用的用户和组来运行。
sudo groupadd mysqlsudo useradd -r -g mysql -s /bin/false mysql下载 MariaDB 11.4.12 二进制 Tarball 访问 MariaDB 官方下载页面 获取准确的下载链接。使用
wget下载到/tmp目录。cd /tmpwget https://mirrors.aliyun.com/mariadb/mariadb-11.4.12/bintar-linux-systemd-x86_64/mariadb-11.4.12-linux-systemd-x86_64.tar.gz解压并移动到标准位置 通常,这类软件会被安装在
/usr/local目录下。sudo tar -xzf mariadb-11.4.12-linux-systemd-x86_64.tar.gz -C /usr/local创建符号链接 创建一个便于管理的符号链接,这样未来升级版本时会更容易。
cd /usr/localsudo ln -s mariadb-11.4.12-linux-systemd-x86_64 mysql
步骤 2:初始化数据库
这是最关键的一步,它会生成初始的系统数据库和
root用户的临时密码。cd /usr/local/mysqlsudo ./scripts/mariadb-install-db --user=mysql --basedir=/usr/local/mysql --datadir=/opt/mariadb_data--user: 指定运行 MariaDB 的用户。--basedir: MariaDB 的基本安装目录。--datadir: 数据库文件(你的所有数据)存放的目录。请确保此目录有足够的空间!
步骤 3:配置 MariaDB
编辑配置文件
编辑
/etc/my.cnf,在[mysqld]部分明确指定basedir和datadir。sudo nano /etc/my.cnf在
[mysqld]部分添加/修改以下行:xxxxxxxxxx[mysqld]basedir = /usr/local/mysqldatadir = /opt/mariadb_datalog-error = /opt/mariadb_data/error.logpid-file = /var/run/mariadbd/mariadbd.pidbind-address = 127.0.0.1port = 3306max_connections = 1024default-storage-engine = InnoDBcharacter-set-server = utf8mb4collation-server = utf8mb4_unicode_ci
步骤 4:配置系统服务
复制服务文件
使用自带的
mysql.server脚本作为服务管理的基础。xxxxxxxxxxsudo cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mariadb启用并启动服务
使用
systemctl来管理服务。xxxxxxxxxxsudo systemctl daemon-reloadsudo systemctl enable mariadbsudo systemctl start mariadb检查服务状态 确保 MariaDB 已经成功启动。
x
sudo systemctl status mariadb如果状态显示为
active (running),则表示服务已成功启动。
步骤 5:安全设置与测试
xxxxxxxxxxcd /usr/local/mysql/binsudo ./mariadb-secure-installation⌘Enter current password for root (enter for none):↩︎Switch to unix_socket authentication [Y/n] Y↩︎Change the root password? [Y/n] Y↩︎New password:Re-enter new password:Remove anonymous users? [Y/n] Y↩︎Disallow root login remotely? [Y/n] Y↩︎Remove test database and access to it? [Y/n] Y↩︎Reload privilege tables now? [Y/n] Y↩︎测试登录 使用新设置的密码尝试登录 MySQL 客户端。
xxxxxxxxxx/usr/local/mysql/bin/mariadb -uroot -p -h127.0.0.1输入密码后,如果看到
MariaDB [(none)]>提示符,恭喜你!安装成功了(CTRL+D退出)。
步骤 6:将 MySQL 客户端添加到 PATH(可选)
为了方便,你可以将 MariaDB 的二进制文件路径(如 mysql, mysqladmin)添加到系统的 PATH 环境变量中。
xxxxxxxxxxecho 'export PATH=/usr/local/mysql/bin:$PATH' | sudo tee /etc/profile.d/mariadb.shsudo ln -sf /usr/local/mysql/bin/mariadb /usr/local/bin/mariadbsudo ln -sf /usr/local/mysql/bin/mariadb-admin /usr/local/bin/mariadb-adminsudo ln -sf /usr/local/mysql/bin/mariadb-dump /usr/local/bin/mariadb-dump现在,你可以在任何目录直接使用mariadb命令了。
xxxxxxxxxxsource /etc/profile.d/mariadb.shmariadb -u root -p -h127.0.0.1(可选)步骤:设置 root 同时支持 socket 和密码登录
如果你的 MariaDB 版本为 10.4 及以上,可以直接:
ALTER USER 'root'@'localhost'IDENTIFIED VIA unix_socketOR mysql_native_passwordUSING PASSWORD('新密码');FLUSH PRIVILEGES;