3

У меня поврежденная установка MariaDB, которую я пытаюсь очистить и переустановить.

Если я сделаю sudo apt-get upgrade я получу следующее удаление:

You might want to run 'apt-get -f install' to correct these.
The following packages have unmet dependencies:
 mariadb-galera-server : Depends: mariadb-galera-server-5.5 (= 5.5.40+maria-1~wheezy) but it is not installed
E: Unmet dependencies. Try using -f.

Если я запускаю sudo apt-get install -f я получаю:

Preconfiguring packages ...
(Reading database ... 31610 files and directories currently installed.)
Unpacking mariadb-galera-server-5.5 (from .../mariadb-galera-server-5.5_5.5.40+maria-1~wheezy_amd64.deb) ...
Stopping MariaDB database server: mysqld failed!
invoke-rc.d: initscript mysql, action "stop" failed.
invoke-rc.d returned 1
There is a MySQL server running, but we failed in our attempts to stop it.
Stop it yourself and try again!
dpkg: error processing /var/cache/apt/archives/mariadb-galera-server-5.5_5.5.40+maria-1~wheezy_amd64.deb (--unpack):
 subprocess new pre-installation script returned error exit status 1
Errors were encountered while processing:
 /var/cache/apt/archives/mariadb-galera-server-5.5_5.5.40+maria-1~wheezy_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

Если я пытаюсь удалить с помощью sudo apt-get --purge remove mariadb-galera-server-5.5 mariadb-galera-server mariadb-common я получаю:

The following packages have unmet dependencies:
 libmariadbclient18 : Depends: mariadb-common but it is not going to be installed
 mariadb-client-5.5 : Depends: mariadb-common but it is not going to be installed
 mariadb-client-core-5.5 : Depends: mariadb-common but it is not going to be installed
E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).

У меня закончились вещи, чтобы попробовать, любая помощь очень ценится.

4 ответа4

13
There is a MySQL server running, but we failed in our attempts to stop it.
Stop it yourself and try again!

У меня была эта проблема вчера, когда пакет сервера mariadb 10.1 не смог обновиться и установить правильно. В конце концов удаление следующей символической ссылки, возможно, решило проблему.

root@box{~}:la /etc/systemd/system/mysql.service
lrwxrwxrwx 1 root root 35 Feb  9 22:55 /etc/systemd/system/mysql.service -> /lib/systemd/system/mariadb.service

Основное сообщение об ошибке, которое я получил, было.

Failed at step NO_NEW_PRIVILEGES spawning /usr/sbin/mysqld: Invalid argument

Я нашел руководство по устранению неполадок mariadb полезным, но не смог найти ответ на сообщения об ошибках, которые я где-либо видел. Только когда я попытался установить Perconadb в качестве альтернативного варианта замены, я нашел путь к этой символической ссылке.

https://mariadb.com/kb/en/mariadb/troubleshooting-installation-issues/

2

Кажется, это известная проблема, о которой сообщается здесь. Наиболее практичным решением было бы сначала уничтожить все запущенные экземпляры mysqld :

sudo killall mysqld

А затем запустите это, как было предложено, чтобы снова запустить работу с MariaDB:

sudo apt-get -f install

Если что-то не работает, запустите dpkg --configure -a перед предыдущими командами и попробуйте снова.

0

Для меня это началось, когда я устанавливал akeneo с mariadb, я получил ошибку:

+---------+----------------------------------------------------------------------------------------------------------------------------+
| Check   | Errors                                                                                                                     
|
+---------+----------------------------------------------------------------------------------------------------------------------------+
| ERROR   | Install MySQL greater or equal to 5.7.0 and lower than 5.8.0 (installed version is 5.5.5-10.1.30-MariaDB-0ubuntu0.17.10.1) |
+---------+----------------------------------------------------------------------------------------------------------------------------+

По какой-то причине Akeneo не будет работать с этим параметром, даже если кажется, что mariadb был основан на MySQL 5.7. Поэтому мне нужно было переключить mariadb на mysql-сервер.

sudo apt-get install mysql-server

Установка удалила mariadb, но при переустановке mysql возникла эта ошибка:

invoke-rc.d: initscript mysql, action "stop" failed.
invoke-rc.d returned 5
There is a MySQL server running, but we failed in our attempts to stop it.
Stop it yourself and try again!

Я не мог найти работающий сервер SQL с

sudo ps -aux | grep sql

Или что-то еще, поэтому я попытался удалить все пакеты, связанные с MySQL. Что бы я ни попробовал дальше, будь то очистка от удаления mysql-server или mariadb, ничего не получится даже:

apt --fix-broken install

Поэтому мне пришлось искать пакеты с:

sudo dpkg --get-selections | grep mysql

Который дал мне:

libdbd-mysql-perl                               install
libmysqlclient20:amd64                          install
mysql-client-5.7                                install
mysql-client-core-5.7                           install
mysql-common                                    install
mysql-server                                    install
mysql-server-core-5.7                           install
php-mysql                                       install
php7.1-mysql                                    install

а также

sudo dpkg --get-selections | grep mariadb

который дал мне:

mariadb-client-10.1                             deinstall
mariadb-common                                  install
mariadb-server-10.1                             deinstall

Затем я приступил к удалению всех пакетов, которые я нашел с

sudo dpkg -P <packagename>

И, наконец, я мог переустановить с

sudo apt-get install mysql-server
0

Если ни один из вышеупомянутых обходных путей не сработал, попробуйте эти две команды.

sudo rm /etc/systemd/system/mysqld.service
sudo rm /etc/systemd/system/mysql.service

Тогда беги

sudo apt -f install

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .