Raspberry-Pi
無法啟動mysqld
我嘗試啟動mysql後得到以下資訊:
$ sudo systemctl start mysqld Job for mariadb.service failed because the control process exited with error code. See "systemctl status mariadb.service" and "journalctl -xe" for details. [pi@raspi ~]$ systemctl status mysqld * mariadb.service - MariaDB 10.5.5 database server Loaded: loaded (/usr/lib/systemd/system/mariadb.service; enabled; vendor preset: disabled) Active: failed (Result: exit-code) since Sun 2020-08-23 08:34:44 PDT; 9s ago Docs: man:mariadbd(8) https://mariadb.com/kb/en/library/systemd/ Process: 466 ExecStartPre=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS) Process: 467 ExecStartPre=/bin/sh -c [ ! -e /usr/bin/galera_recovery ] && VAR= || VAR=`cd /usr/bin/..; /usr/bin/galera_recovery`; [ $? -eq 0 ] && systemctl set-environment _WSREP_START_POSITION=$VAR || exit 1 (code=exited, status=0/S> Process: 479 ExecStart=/usr/bin/mariadbd $MYSQLD_OPTS $_WSREP_NEW_CLUSTER $_WSREP_START_POSITION (code=exited, status=1/FAILURE) Main PID: 479 (code=exited, status=1/FAILURE) Status: "MariaDB server is down" Aug 23 08:34:44 raspi mariadbd[479]: 2020-08-23 8:34:44 0 [ERROR] InnoDB: Upgrade after a crash is not supported. The redo log was created with MariaDB 10.4.14. Aug 23 08:34:44 raspi mariadbd[479]: 2020-08-23 8:34:44 0 [ERROR] InnoDB: Plugin initialization aborted with error Generic error Aug 23 08:34:44 raspi mariadbd[479]: 2020-08-23 8:34:44 0 [Note] InnoDB: Starting shutdown... Aug 23 08:34:44 raspi mariadbd[479]: 2020-08-23 8:34:44 0 [ERROR] Plugin 'InnoDB' init function returned error. Aug 23 08:34:44 raspi mariadbd[479]: 2020-08-23 8:34:44 0 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed. Aug 23 08:34:44 raspi mariadbd[479]: 2020-08-23 8:34:44 0 [ERROR] Unknown/unsupported storage engine: InnoDB Aug 23 08:34:44 raspi mariadbd[479]: 2020-08-23 8:34:44 0 [ERROR] Aborting Aug 23 08:34:44 raspi systemd[1]: mariadb.service: Main process exited, code=exited, status=1/FAILURE Aug 23 08:34:44 raspi systemd[1]: mariadb.service: Failed with result 'exit-code'. Aug 23 08:34:44 raspi systemd[1]: Failed to start MariaDB 10.5.5 database server. lines 1-21/21 (END)
我也沒有看到任何
syslog-ng
資訊/var/log/messages.log
……我不知道發生了什麼,有人可以幫我解決這個問題嗎?:o
正如@tetech 建議的那樣,我應該降級到以前版本的 mariadb 包。所以我嘗試了:
[pi@raspi pkg]$ sudo pacman -U /var/cache/pacman/pkg/mariadb-10.4.14-1-aarch64.pkg.tar.xz [sudo] password for pi: loading packages... warning: downgrading package mariadb (10.5.5-1 => 10.4.14-1) resolving dependencies... warning: cannot resolve "mariadb-clients=10.4.14", a dependency of "mariadb" :: The following package cannot be upgraded due to unresolvable dependencies: mariadb :: Do you want to skip the above package for this upgrade? [y/N] n error: failed to prepare transaction (could not satisfy dependencies) :: unable to satisfy dependency 'mariadb-clients=10.4.14' required by mariadb [pi@raspi pkg]$ sudo pacman -U /var/cache/pacman/pkg/mariadb-clients-10.4.14-1-aarch64.pkg.tar.xz loading packages... warning: downgrading package mariadb-clients (10.5.5-1 => 10.4.14-1) resolving dependencies... warning: cannot resolve "mariadb-libs=10.4.14", a dependency of "mariadb-clients" :: The following package cannot be upgraded due to unresolvable dependencies: mariadb-clients :: Do you want to skip the above package for this upgrade? [y/N] error: failed to prepare transaction (could not satisfy dependencies) :: unable to satisfy dependency 'mariadb-libs=10.4.14' required by mariadb-clients [pi@raspi pkg]$ sudo pacman -U /var/cache/pacman/pkg/mariadb-libs-10.4.14-1-aarch64.pkg.tar.xz loading packages... warning: downgrading package mariadb-libs (10.5.5-1 => 10.4.14-1) resolving dependencies... looking for conflicting packages... error: failed to prepare transaction (could not satisfy dependencies) :: installing mariadb-libs (10.4.14-1) breaks dependency 'mariadb-libs=10.5.5' required by mariadb-clients [pi@raspi pkg]$ sudo pacman -U /var/cache/pacman/pkg/mariadb-clients-10.4.14-1-aarch64.pkg.tar.xz loading packages... warning: downgrading package mariadb-clients (10.5.5-1 => 10.4.14-1) resolving dependencies... warning: cannot resolve "mariadb-libs=10.4.14", a dependency of "mariadb-clients" :: The following package cannot be upgraded due to unresolvable dependencies: mariadb-clients :: Do you want to skip the above package for this upgrade? [y/N] error: failed to prepare transaction (could not satisfy dependencies) :: unable to satisfy dependency 'mariadb-libs=10.4.14' required by mariadb-clients
但似乎
mariadb-libs
是在抱怨mariadb-clients
,反之亦然。如何讓 thenm 降級?我現在認為重新初始化我的數據庫可能會更容易……
值得注意的錯誤是
InnoDB: Upgrade after a crash is not supported. The redo log was created with MariaDB 10.4.14.
看來您沒有正確停止數據庫然後對其進行升級。
您需要降級到 10.4.14 並進行恢復,或者重新初始化然後恢復升級前的備份。
我在 Manjaro Linux 上的解決方案是
sudo pacman -s downgrade
然後執行downgrade mariadb-libs mariadb-clients mariadb
降級還允許您選擇要降級到的版本。超級簡單,像魅力一樣工作。