本站使用了 Pjax 等基于 JavaScript 的开发技术,但您的浏览器已禁用 JavaScript,请开启 JavaScript 以保证网站正常显示!

Arch Linux安装MariaDB

Archlinux上安装MySQL/MariaDB和其它发行版略有不同,因此这里梳理记录一下

  • 执行常规安装

    请保留出处

    [mu@mu polls]$ sudo pacman -S mariadb #安装MariaDB
    [mu@mu polls]$ sudo systemctl enable mariadb #设置开机自启
    Created symlink /etc/systemd/system/multi-user.target.wants/mariadb.service → /usr/lib/systemd/system/mariadb.service.
    [mu@mu polls]$ sudo systemctl start mariadb #启动MariaDB,会发现启动失败
    Job for mariadb.service failed because the control process exited with error code.
    See "systemctl status mariadb.service" and "journalctl -xe" for details.
    [mu@mu polls]$ sudo journalctl -xe | grep error #抓取错误信息

    MariaDB错误日志

  • 通过错误日志可以发现,启动失败的原因是数据库中不存在相关的数据库表,即"mysql.user"表。因此,我们需要先完成初始化安装,而这也正是ArchLinuxDebianRHEL/CentOS等发行版差异的体现,后者在安装完DEB/RPM包后,即可完成数据库的初始化。

    [mu@mu polls]$ id mysql
    uid=978(mysql) gid=978(mysql) groups=978(mysql)
    [mu@mu polls]$ sudo mysql_install_db --user=mysql --basedir=/usr --datadir=/var/lib/mysql/
    [mu@mu polls]$ sudo systemctl start mariadb
    [mu@mu polls]$ ss -tnl
    State      Recv-Q      Send-Q            Local Address:Port           Peer Address:Port      
    LISTEN     0           128                     0.0.0.0:22                  0.0.0.0:*         
    LISTEN     0           10                      0.0.0.0:8000                0.0.0.0:*         
    LISTEN     0           128                        [::]:22                     [::]:*         
    LISTEN     0           80                            *:3306                      *:*         
    [mu@mu polls]$ mysql_secure_installation 
    [mu@mu polls]$ sudo systemctl enable mariadb
    [mu@mu polls]$ sudo systemctl restart mariad

    :如果不想通过systemd容器中无法使用systemd,你可以通过执行命令 /usr/sbin/mysqld_safe --datadir=/var/lib/mysql/ & 的方式来启动mariadb,同时请注意DATADIR_PATH默认为/var/lib/mysql/,如果你手动修改了数据库存放目录,请替换为你自己的DATADIR_PATH。


 继续浏览关于 Django 的文章

 本文最后更新于 2019/01/26 17:51:29,可能因经年累月而与现状有所差异

 引用转载请注明:数字漩涡 > 数据库 > Arch Linux安装MariaDB

发现共鸣

如是说:见到你那一刻我心里有场海啸,可我静静站着,没有让任何人知道。