mysql:无法识别的服务

问题描述 投票:0回答:2

按照步骤完成后,我按照此处的说明在 WSL 上安装 mariadb。我运行这个

sudo service mysql start

我得到了

mysql: unrecognized service

知道如何解决这个问题吗?

mariadb windows-subsystem-for-linux
2个回答
9
投票

如您所见,这只是一个简单的问题,但我花了 24 小时来诊断问题。

解决方案: 我用这个命令卸载 mariadb

sudo apt-get remove --auto-remove mariadb-server

并安装

sudo apt install mysql-server
,但这会导致更多问题

安装mysql成功但无法启动

dpkg: error processing package mysql-server (--configure):
dependency problems - leaving unconfigured
No apport report written because the error message indicates its a followup error from a previous failure.
                                                                                                          
Errors were encountered while processing:
mysql-server-5.7
mysql-server
E: Sub-process /usr/bin/dpkg returned an error code (1)

因此,删除 mariadb 的 deb 源并清除 mysql-common,然后重新安装它。

做:

sudo apt edit-sources

并查找包含 mariadb 的任何内容,例如:

deb [arch=amd64,arm64,ppc64el] http://ftp.nluug.nl/db/mariadb/repo/10.3/ubuntu bionic main

通过在其前面添加

#
将其注释掉。然后运行

sudo apt update
sudo apt purge mysql-common
sudo apt install mysql-common

之后你可以通过 sudo apt install mysql-server 正确安装 mysql-server,然后执行:

sudo apt purge mysql-server mysql-server-5.7
sudo apt purge mysql-server mysql-client mysql-common mysql-server-core-5.7 mysql-client-core-5.7


sudo rm -rfv /etc/mysql /var/lib/mysql

sudo apt autoremove

sudo apt autoclean

最后:

sudo apt update    
sudo apt install mysql-server mysql-client --fix-broken --fix-missing

参考资料: https://askubuntu.com/questions/980314/cannot-install-mysql-server-in-ubuntu16-0-4 https://askubuntu.com/questions/763534/cannot-reinstall-mysql-server-after-its-purge


5
投票

您在 WSL 上使用哪个 Linux 发行版?

首先,尝试以下操作:

systemctl {start|stop|restart|status} mysql

service mysql {start|stop|restart|status}

管理 MySQL 服务。

原因可能有以下几点:

  1. 服务名称错误:

    在某些 Linux 发行版上,该服务被命名为

    mysqld
    而不是
    mysql

    检查: 在 WSL 上运行

    chkconfig --list
    并识别正确的服务名称。

  2. 文件权限问题:

    请确保

    /var/lib/mysql
    中的文件具有
    770
    权限和所有权设置为
    mysql
    用户。

    修复:

    chmod -R 770 /var/lib/mysql
    chgrp -R mysql /var/lib/mysql
    

    除此之外,请确保

    /etc/rc.d/init.d/mysqld
    脚本具有修改mysqld的可执行权限。

    修复:

    chmod 755 /etc/rc.d/init.d/mysqld
    
  3. MySQL 服务器包丢失/损坏

    重新安装MySQL!

© www.soinside.com 2019 - 2024. All rights reserved.