使用 dnf 安装后,如何让 systemctl 运行 mysql?

使用 dnf 安装后,如何让 systemctl 运行 mysql?

我使用以下方式安装了 mysqlsudo dnf install community-mysql 当我输入时,which mysql我得到 /user/bin/mysql

当我尝试使用 systemctl start mysql 或 mysqld 或 mysql80 运行它时,它无法识别任何服务,而当我使用 systemctl --type=service 时,mysql 没有列出。

我是 Linux 新用户(使用 Fedora 39)。我遗漏了什么?它说 installatino 已完成,但我究竟该如何运行它?完全的 Linux 新手(这是第 2 天)。先跳进去。

答案1

这是我所做的观察,这个答案(我没有测试)可能是正确的,至少会教你如何从一般意义上看待并带你进入下一步。

sudo dnf search community-mysql

并且它显示community-mysql.x86_64 : MySQL client programs and shared libraries,但您通常不会在启动时使用 systemctl 运行“客户端程序”,因此您正在寻找服务器或守护程序。相同的 dnf 搜索还列出了community-mysql-server.x86_64 : The MySQL server and related files

所以你需要安装那个“服务器”包(我检查过,它包含一个 /usr/sbin/mysqld,其中的“d”表示守护进程)

sudo dnf install community-mysql-server 
sudo systemctl enable mysqld 
sudo systemctl start mysqld 

第一次只需要“start”命令;以后,enable 会在您重新启动时自动启动守护进程。在其他类似情况下,如果 systemctl 找不到“mysqld”字段,则服务可能有不同的名称。您展示了如何搜索服务,我倾向于进入较低级别并使用类似以下内容查找所有可能的服务文件

locate -ri \\.service$ | less

回到开头,当您尝试安装服务器时,检查“守护进程”文件是一个很好的起点。例如命令

sudo dnf provides */mysqld

将直接显示包含 mysqld 守护程序的软件包。 */ 表示查找任何目录,因为它可能位于 /usr/bin 或 /usr/sbin 或 /bin 或 /sbin

我已经使用 fedora 很长时间了(自从它被称为 red hat:) 但我不使用 mysql,这就是为什么我能够提出正确的答案但我没有测试它。

相关内容