在 Linux 上安装 MariaDB 或 MySQL

开始在您的 Linux 系统上使用开源 SQL 数据库。
55 位读者喜欢这篇文章。
Person standing in front of a giant computer screen with numbers, data

Opensource.com

MariaDBMySQL 都是使用 SQL 并且共享相同原始代码库的开源数据库。MariaDB 是 MySQL 的直接替代品,以至于您可以使用相同的命令 (mysql) 与 MySQL 和 MariaDB 数据库进行交互。 因此,本文同样适用于 MariaDB 和 MySQL。

安装 MariaDB

您可以使用 Linux 发行版的软件包管理器安装 MariaDB。 在大多数发行版上,MariaDB 分为服务器软件包和客户端软件包。 服务器软件包提供数据库“引擎”,它是 MariaDB 的一部分,在后台运行(通常在物理服务器上),侦听数据输入或数据输出请求。 客户端软件包提供命令 mysql,您可以使用该命令与服务器进行通信。

在 RHEL、Fedora、CentOS 或类似系统上

$ sudo dnf install mariadb mariadb-server

在 Debian、Ubuntu、Elementary 或类似系统上

$ sudo apt install mariadb-client mariadb-server

其他系统可能以不同的方式打包 MariaDB 系统,因此您可能需要搜索您的软件存储库以了解您的发行版的维护者如何提供它。

启动 MariaDB

由于 MariaDB 的设计部分是作为数据库服务器运行,因此它可以在一台计算机上运行并从另一台计算机进行管理。 只要您可以访问运行它的计算机,就可以使用 mysql 命令来管理数据库。 在撰写本文时,我是在本地计算机上运行 MariaDB,但您同样可能会与托管在远程系统上的 MariaDB 数据库进行交互。

在启动 MariaDB 之前,您必须创建一个初始数据库。 您应该定义您希望 MariaDB 在初始化其文件结构时使用的用户。 默认情况下,MariaDB 使用当前用户,但您可能希望它使用专用的用户帐户。 您的软件包管理器可能已经为您配置了系统用户和组。 使用 grep 查找是否存在 mysql

$ grep mysql /etc/group
mysql:x:27:

您还可以在 /etc/passwd 中查找专用用户,但通常,只要有组,也会有用户。 如果没有专用的 mysql 用户和组,请浏览 /etc/group 以寻找明显的替代方案(例如 mariadb)。 如果没有找到,请阅读您的发行版的文档以了解 MariaDB 如何运行。

假设您的安装使用 mysql,请初始化数据库环境

$ sudo mysql_install_db --user=mysql
Installing MariaDB/MySQL system tables in '/var/lib/mysql'...
OK
[...]

此步骤的结果揭示了您必须执行的下一步操作以配置 MariaDB

PLEASE REMEMBER TO SET A PASSWORD FOR THE MariaDB root USER !
To do so, start the server, then issue the following commands:

'/usr/bin/mysqladmin' -u root password 'new-password'
'/usr/bin/mysqladmin' -u root -h $(hostname) password 'new-password'

Alternatively you can run:
'/usr/bin/mysql_secure_installation'

which will also give you the option of removing the test
databases and anonymous user created by default.  This is
strongly recommended for production servers.

使用您的发行版的 init 系统启动 MariaDB

$ sudo systemctl start mariadb

要使 MariaDB 服务器在启动时启动

$ sudo systemctl enable --now mariadb

现在您有了一个可以通信的 MariaDB 服务器,请为其设置密码

mysqladmin -u root password 'myreallysecurepassphrase'
mysqladmin -u root -h $(hostname) password 'myreallysecurepassphrase'

最后,如果您打算在生产服务器上使用此安装,请在上线之前运行 mysql_secure_installation 命令。

接下来阅读什么
标签
Seth Kenlon
Seth Kenlon 是一位 UNIX 极客、自由文化倡导者、独立多媒体艺术家和 D&D 爱好者。 他曾在电影和计算机行业工作,而且常常同时从事这两项工作。

评论已关闭。

Creative Commons License本作品根据 Creative Commons Attribution-Share Alike 4.0 International License 许可。
© . All rights reserved.