web-dev-qa-db-ja.com

MariaDB-依存関係の問題-未構成のままにする

Debian Jessie 8.1にISPConfig3をインストールしようとしましたが、mySQL(mariaDB 10.1)に接続できませんでした。そのため、CTRL + Cでインストールを強制終了し、手動でmySQLにログインしようとしましたが、失敗しました。ソケットについて文句を言っていました。そこで、mariaDBとmySQLを削除して削除しました。

service mysql stop
apt-get --purge remove "mysql*"
mv /etc/mysql/ /tmp/mysql_configs/
apt-get remove --purge mysql*
apt-get autoremove
apt-get autoclean
service Apache2 restart
apt-get update

Source.list内に(最後の2行を追加)(nano /etc/apt/sources.list):

deb http://debian.mirror.constant.com/ jessie main contrib non-free
deb-src http://debian.mirror.constant.com/ jessie main contrib non-free

deb http://security.debian.org/ jessie/updates main contrib non-free
deb-src http://security.debian.org/ jessie/updates main contrib non-free

deb [Arch=AMD64,i386] http://ftp.utexas.edu/mariadb/repo/10.0/debian jessie main
deb-src http://ftp.utexas.edu/mariadb/repo/10.0/debian jessie main

次に、 MariaDB で指定されたコマンドを実行しました。

Sudo apt-get install software-properties-common
Sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 0xcbcb082a1bb943db
Sudo apt-get update
Sudo apt-get install mariadb-server

次のエラーが発生します。

Setting up mariadb-server-10.1 (10.1.9+maria-1~jessie) ...
2015-12-15 11:26:57 140472422967232 [Note] /usr/sbin/mysqld (mysqld 10.1.9-MariaDB-1~jessie) starting as process 12018 ...
2015-12-15 11:26:57 140472422967232 [Note] Using unique option prefix 'myisam_recover' is error-prone and can break in the future. Please use the full name 'myisam-recover-options' instead.
2015-12-15 11:26:57 140472422967232 [Note] InnoDB: Using mutexes to ref count buffer pool pages
2015-12-15 11:26:57 140472422967232 [Note] InnoDB: The InnoDB memory heap is disabled
2015-12-15 11:26:57 140472422967232 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
2015-12-15 11:26:57 140472422967232 [Note] InnoDB: Memory barrier is not used
2015-12-15 11:26:57 140472422967232 [Note] InnoDB: Compressed tables use zlib 1.2.8
2015-12-15 11:26:57 140472422967232 [Note] InnoDB: Using Linux native AIO
2015-12-15 11:26:57 140472422967232 [Note] InnoDB: Using CPU crc32 instructions
2015-12-15 11:26:57 140472422967232 [Note] InnoDB: Initializing buffer pool, size = 256.0M
2015-12-15 11:26:57 140472422967232 [Note] InnoDB: Completed initialization of buffer pool
2015-12-15 11:26:57 140472422967232 [Note] InnoDB: Highest supported file format is Barracuda.
2015-12-15 11:26:57 140472422967232 [Note] InnoDB: 128 rollback segment(s) are active.
2015-12-15 11:26:57 140472422967232 [Note] InnoDB: Waiting for purge to start
2015-12-15 11:26:57 140472422967232 [Note] InnoDB:  Percona XtraDB (http://www.percona.com) 5.6.26-74.0 started; log sequence number 19615081045
2015-12-15 11:26:57 140471636559616 [Note] InnoDB: Dumping buffer pool(s) not yet started
2015-12-15 11:26:58 140472422967232 [Note] Plugin 'FEEDBACK' is disabled.
Job for mariadb.service failed. See 'systemctl status mariadb.service' and 'journalctl -xn' for details.
invoke-rc.d: initscript mysql, action "start" failed.
dpkg: error processing package mariadb-server-10.1 (--configure):
 subprocess installed post-installation script returned error exit status 1
dpkg: dependency problems prevent configuration of mariadb-server:
 mariadb-server depends on mariadb-server-10.1 (= 10.1.9+maria-1~jessie); however:
  Package mariadb-server-10.1 is not configured yet.

dpkg: error processing package mariadb-server (--configure):
 dependency problems - leaving unconfigured
Errors were encountered while processing:
 mariadb-server-10.1
 mariadb-server
E: Sub-process /usr/bin/dpkg returned an error code (1)

どうすれば修正できますか?

8
KingsInnerSoul

以下を試してください:

apt-get remove --purge mysql*
apt-get remove --purge mysql
apt-get remove --purge mariadb
apt-get remove --purge mariadb*
apt-get --purge remove mariadb-server
apt-get --purge remove python-software-properties

注:現在のデータベースをダンプするかどうかを尋ねられたら、「いいえ」と答えます。しかし、phpmyadminデータベースは簡単に構成解除できます。

フレッシュからすべてをインストールします:/etc/apt/sources.listファイルに以下を追加します:

deb [Arch=AMD64,i386] http://ftp.utexas.edu/mariadb/repo/10.1/debian jessie main
deb-src http://ftp.utexas.edu/mariadb/repo/10.1/debian jessie main

そして、

apt-get install python-software-properties
apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 0xcbcb082a1bb943db
apt-get install software-properties-common
apt-get install mariadb-server mariadb-client

完了すると、mysql -Vを実行して次のように表示できるようになります。

mysql  Ver 15.1 Distrib 10.1.9-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2
13
Mike K

Ubuntu 14.04からアップグレードしたUbuntu 16.04にMariaDBサーバー10.0をインストールする際に非常によく似た問題がありました。

Setting up mariadb-server-10.0 (10.0.31-0ubuntu0.16.04.2) ...
dpkg: error processing package mariadb-server-10.0 (--configure):
 subprocess installed post-installation script returned error exit status 1
dpkg: dependency problems prevent configuration of mariadb-server:
 mariadb-server depends on mariadb-server-10.0 (>= 10.0.31-0ubuntu0.16.04.2); however:
  Package mariadb-server-10.0 is not configured yet.

dpkg: error processing package mariadb-server (--configure):
 dependency problems - leaving unconfigured

@ user3502626の回答から、Sudo mysql_install_dbを使用したヒントが得られ、新しいエラーが発生しました。

/usr/sbin/mysqld: Can't read dir of '/etc/mysql/mariadb.conf.d/' (Errcode: 13 "Permission denied")

そのエラーを検索すると AppArmorでの問題を指摘するDebianバグレポート につながり、次のようにして解決できます。

$ echo -n "/usr/sbin/mysqld" | Sudo tee /sys/kernel/security/apparmor/.remove
$ apt install -f
$ apparmor_parser -r /etc/apparmor.d/usr.sbin.mysqld

これにより、MariaDBが正しくインストールされました。

2
James

このエラーが発生しました。ここの新しい人たちのために。

問題はmysqlデータベースがないためでした。フォルダを削除したので/var/lib/mysql/および/etc/mysql/

実行したばかりSudo mysql_install_db。次に、MySqlサービスを開始しますSudo service mysql start。うまくいくはずです。

実行時にエラーが発生した場合Sudo mysql_install_db、実行Sudo mkdir /etc/mysql/conf.d/。その後、再度開始します。

2
user3502626

この状況は、initスクリプトのタイムアウトが短すぎる場合に発生する可能性があります。たとえば、タイムアウトが30秒でしたが、サーバーの起動に48秒かかっていた MDEV-9382 を参照してください。

Systemdが有効になっていない/サポートされていないシステムの場合:

MYSQLD_STARTUP_TIMEOUTをスクリプトで直接設定するか、コマンドラインから設定することで、タイムアウトを増やすことができます。 MariaDB 10.1.13以降のバージョンでは、initスクリプトは/ etc/default/mariadbもソースにするため、MYSQLD_STARTUP_TIMEOUTを設定して起動タイムアウトを永続的に変更するためにも使用できます。 MariaDB 10.1.13では、デフォルトのタイムアウトが30秒から60秒に増加しました。

Systemdをサポートするシステム:

起動タイムアウトは、TimeoutStartSec systemdオプションを設定することで増やすことができます。上書きまたは設定するsystemd設定がある場合は、ファイル/etc/systemd/system/mariadb.service.d/XXXX.confファイルを作成します。ここで、XXXXはあなたにとって意味のあるものであり、構成オプションを適切な場所に配置しますセクション、通常は[Service]。 systemdオプションがリストの場合、置換値を設定する前にこれを空に設定する必要があるかもしれません。例:

[Service]

TimeoutStartSec=
TimeoutStartSec=60

構成変更後systemctl daemon-reloadは変更を取得するために必要です。

出典:https://mariadb.com/kb/en/mariadb/ apt-upgrade-fails-but-the-database-is-running /

1
Cryck

ホームディレクトリに.my.cnfファイルがありますか?これは私にとってエラーの原因でした。削除してインストールプロセスを再開するだけです。

0
Sudo apt-get dist-upgrade

..これを私のために解決した

満足できないパッケージまたは依存関係の間に競合がある場合、dist-upgradeはパッケージを削除する可能性があるため、注意して使用してください。 dist-upgradeは、インストールと削除に適していると思われるパッケージのリストを通知します。変更する前にリストを確認してください

クレジット フロリアン

0
Tushar Goswami