ubuntu 16.04 「パッケージ mysql-server-5.7 の処理中にエラーが発生しました・・・」って(^-^;

mysql2
apt-get updateをcronに仕込んでるんですがあるとき失敗のステータスが。

なので先ずは要らない関係消したくて、

sudo apt-get autoremove

実行するとこんな状態に、

hoge# apt-get autoremove
パッケージリストを読み込んでいます… 完了
依存関係ツリーを作成しています
状態情報を読み取っています… 完了
以下のパッケージは「削除」されます:
linux-headers-4.4.0-21 linux-headers-4.4.0-21-generic linux-image-4.4.0-21-generic
linux-image-extra-4.4.0-21-generic
アップグレード: 0 個、新規インストール: 0 個、削除: 4 個、保留: 0 個。
2 個のパッケージが完全にインストールまたは削除されていません。
この操作後に 295 MB のディスク容量が解放されます。
続行しますか? [Y/n] y
(データベースを読み込んでいます … 現在 126160 個のファイルとディレクトリがインストールされています。)
linux-headers-4.4.0-21-generic (4.4.0-21.37) を削除しています …
linux-headers-4.4.0-21 (4.4.0-21.37) を削除しています …
linux-image-extra-4.4.0-21-generic (4.4.0-21.37) を削除しています …
run-parts: executing /etc/kernel/postinst.d/apt-auto-removal 4.4.0-21-generic /boot/vmlinuz-4.4.0-21-generic
run-parts: executing /etc/kernel/postinst.d/initramfs-tools 4.4.0-21-generic /boot/vmlinuz-4.4.0-21-generic
update-initramfs: Generating /boot/initrd.img-4.4.0-21-generic
W: mdadm: /etc/mdadm/mdadm.conf defines no arrays.
run-parts: executing /etc/kernel/postinst.d/unattended-upgrades 4.4.0-21-generic /boot/vmlinuz-4.4.0-21-generic
run-parts: executing /etc/kernel/postinst.d/update-notifier 4.4.0-21-generic /boot/vmlinuz-4.4.0-21-generic
run-parts: executing /etc/kernel/postinst.d/zz-update-grub 4.4.0-21-generic /boot/vmlinuz-4.4.0-21-generic
Generating grub configuration file …
Linux イメージを見つけました: /boot/vmlinuz-4.4.0-31-generic
Found initrd image: /boot/initrd.img-4.4.0-31-generic
Linux イメージを見つけました: /boot/vmlinuz-4.4.0-28-generic
Found initrd image: /boot/initrd.img-4.4.0-28-generic
Linux イメージを見つけました: /boot/vmlinuz-4.4.0-21-generic
Found initrd image: /boot/initrd.img-4.4.0-21-generic
完了
linux-image-4.4.0-21-generic (4.4.0-21.37) を削除しています …
Examining /etc/kernel/postrm.d .
run-parts: executing /etc/kernel/postrm.d/initramfs-tools 4.4.0-21-generic /boot/vmlinuz-4.4.0-21-generic
update-initramfs: Deleting /boot/initrd.img-4.4.0-21-generic
run-parts: executing /etc/kernel/postrm.d/zz-update-grub 4.4.0-21-generic /boot/vmlinuz-4.4.0-21-generic
Generating grub configuration file …
Linux イメージを見つけました: /boot/vmlinuz-4.4.0-31-generic
Found initrd image: /boot/initrd.img-4.4.0-31-generic
Linux イメージを見つけました: /boot/vmlinuz-4.4.0-28-generic
Found initrd image: /boot/initrd.img-4.4.0-28-generic
完了
mysql-server-5.7 (5.7.13-0ubuntu0.16.04.2) を設定しています …
Renaming removed key_buffer and myisam-recover options (if present)
mysql_upgrade: Got error: 1045: Access denied for user ‘debian-sys-maint’@’localhost’ (using password: YES) while connecting to the MySQL server
Upgrade process encountered error and will not continue.
mysql_upgrade failed with exit status 11
dpkg: パッケージ mysql-server-5.7 の処理中にエラーが発生しました (–configure):
サブプロセス インストール済みの post-installation スクリプト はエラー終了ステータス 1 を返しました
dpkg: 依存関係の問題により mysql-server の設定ができません:
mysql-server は以下に依存 (depends) します: mysql-server-5.7 …しかし:
パッケージ mysql-server-5.7 はまだ設定されていません。dpkg: パッケージ mysql-server の処理中にエラーが発生しました (–configure):
依存関係の問題 – 設定を見送ります
エラーメッセージは前の失敗から続くエラーであることを示しているので、レポートは書き込まれません。
処理中にエラーが発生 しました:
mysql-server-5.7
mysql-server
E: Sub-process /usr/bin/dpkg returned an error code (1)

なんで?

なんで?

こういうときには必死で考えてみる(^^♪

当たり前ですが。

先ず、

mysql-server

mysql-server-5.7

なんで?

一緒に入れた覚えないんだけどなぁ~

ん~これは最悪、mysql-server関連全て消してから入れなおした方が良いのかなぁ~なんてボーっと表示されたコマンドラインを見ていたら。

ん?ん?

ちゃんとヒントは書いてあるやん!!

mysql_upgrade: Got error: 1045: Access denied for user ‘debian-sys-maint’@’localhost’ (using password: YES) while connecting to the MySQL server
Upgrade process encountered error and will not continue.

Access denied for user ‘debian-sys-maint’@’localhost’

パスワードも使用する条件だけど debian-sys-maint@localhost さんにはアクセス権無いよ!!って(^^♪

だから失敗して継続できせん。って。

後の方にも出てくるメッセージで

エラーメッセージは前の失敗から続くエラーであることを示しているので、レポートは書き込まれません。

とも出ているし。

という訳で

debian-sys-maint@localhost

さんに関しての調査。

ちなみに ebian-sys-maint さんも作った覚えないんだけどなぁ(^-^;

という訳でこの人がどういう人かと言うとその情報は

/etc/mysql/debian.cnf

に設定されております。

hoge# cat /etc/mysql/debian.cnf
# Automatically generated for Debian scripts. DO NOT TOUCH!
[client]
host = localhost
user = debian-sys-maint
password = XXXXXXXXXXXXXX
socket = /var/run/mysqld/mysqld.sock
[mysql_upgrade]
host = localhost
user = debian-sys-maint
password = XXXXXXXXXXXXXX
socket = /var/run/mysqld/mysqld.sock

ちゃんとmysql_upgrade担当さんになってる(^^♪

パスワードまで設定されてるし(XXXXXXXXXXXXXXの部分には任意のパスワードが設定済み)

でもこのdebian-sys-maintさんに対する権限があるのかというのを確認してみると。

hoge# mysql -u root -p
Enter password:
mysql> show grants for ‘debian-sys-maint’@’localhost’;
ERROR 1141 (42000): There is no such grant defined for user ‘debian-sys-maint’ on host ‘localhost’
mysql>

無いやん(^-^;

という訳で設定してあげます。

mysql> grant all on *.* to ‘debian-sys-maint’@’localhost’ identified by ‘XXXXXXXXXXXXXX’

再び確認。

mysql> show grants for ‘debian-sys-maint’@’localhost’;
+—————————————————————+
| Grants for debian-sys-maint@localhost |
+—————————————————————+
| GRANT ALL PRIVILEGES ON *.* TO ‘debian-sys-maint’@’localhost’ |
+—————————————————————+
1 row in set (0.00 sec)

という感じで設定してあげた後に apt-get upgrade 等を行うと正常に終了しました。

ん~なんか納得しないけど(^-^;

ちなみにベンチはとってませんがmysql5.5から5.7になっただけでかなり早くなった感じがしますね。

すみません。具体的な数字もなく言ってますが<(_ _)>

シェアする

  • このエントリーをはてなブックマークに追加

フォローする