質問: 128.0m 130711 16:39:19 innodb: completed initialization of buffer pool 130711 16:39:19 innodb: highest supported file format is barracuda. 130711 16:39:19 innodb: waiting for the background threads to start 130711 16:39:20 innodb: 5.5.31 started; log sequence number 1595695 130711 16:39:21 innodb: starting shutdown... 130711 16:39:22 innodb: shutdown completed; log sequence number 1595695 starting mysql database server: mysqld .. invoke-rc.d: initscript mysql, action "start" failed. dpkg: error processing mysql-server-5.5 (--configure): subprocess installed post-installation script returned error exit status 1 dpkg: dependency problems prevent configuration of mysql-server: mysql-server depends on mysql-server-5.5; however: package mysql-server-5.5 is not configured yet. dpkg: error processing mysql-server (--configure): dependency problems - leaving unconfigured errors were encountered while processing: mysql-server-5.5 mysql-server
回答: 最初の問題(mysqlエラー)それらの[error]ビットについて...してください# grep -rfw language /etc/mysql/ 私が思ったように、あなたの設定ファイルはまだ非推奨の設定オプションを参照しています。たとえば、squeezeからアップグレードされたwheezyシステムの1つには、次のものがあります。# grep -rfw language /etc/mysql /etc/mysql/my.cnf.dpkg-old:language = /usr/share/mysql/english # grep -rfw lc-messages-dir /etc/mysql /etc/mysql/my.cnf:lc-messages-dir = /usr/share/mysql 古いディレクティブは.dpkg-oldファイル(使用されていません)にあり、lc-messages-dirは「アクティブ」ファイルにあることに注意してください。アクティブな構成ファイルのlanguageオプションをコメントアウトすると、これが修正されるはずです。 mysqlは、*.cnfディレクトリから/etc/mysql/conf.dパターンに一致するすべてのファイルもロードすることに注意してください。2番目の問題(mysqlデーモンの起動の失敗)この問題を回避するための簡単なハック:テキストエディターで/etc/init.d/mysql rcファイルを開き、スクリプト引数でディスパッチするケーススイッチを見つけ、開始引数を処理するブランチの最初のコマンドの前にexit 0を置きます。次に、dpkg --configure --pendingを実行します。 (おそらく)成功したら、編集を元に戻します。このトリックの背後にある考え方は、rc-scriptの開始ターゲットを正常に完了するようにすることです。同じアプローチは、インストール後のスクリプト(debian開発者の用語ではpostinstスクリプト)が誤動作する場合にパッケージのアンインストールを処理するのにも役立つ場合があります— exit 0を/var/lib/dpkg/info/<packagename>.postinstスクリプトの先頭近くに配置し、通常はdpkg --configure --pendingを実行します役立ちます。しかし、通常の太字の警告が適用されます:そのようなアドバイスに盲目的に従わないでください:パッケージ構成スクリプトは単にエラーを出すだけではありませんユーザーを不満にさせる—通常、特定の構成やクリーンアップなどを実行するため、説明されているような手段を最後の手段として扱う必要があります。