Ubuntuにmysql-serverをインストールできません


17

ubuntu 9.10サーバーマシンにmysql-serverをインストールできません。apt-get install mysql-serverを使用する場合、出力は次のとおりです。

# apt-get install mysql-server

Reading package lists... Done
Building dependency tree
Reading state information... Done

mysql-server is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 120 not upgraded.
2 not fully installed or removed.

After this operation, 0B of additional disk space will be used.
Setting up mysql-server-5.1 (5.1.37-1ubuntu5.4) ...
* Stopping MySQL database server 
    Mysqld    [ OK ]
* Starting MySQL database server 
mysqld [fail]

invoke-rc.d: initscript mysql, action "start" failed.

dpkg: error processing mysql-server-5.1 (--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.1; however:
Package mysql-server-5.1 is not configured yet.

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

No apport report written because the error message indicates its a followup error from a previous failure.
Errors were encountered while processing:
mysql-server-5.1
mysql-server  
E: Sub-process /usr/bin/dpkg returned an error code (1)

この問題に対する満足のいく解決策はどこにもありません。多くのサイトはそれを再インストールするように指示しますが、機能しません。

任意の助けをいただければ幸いです。

ありがとうございました..


aptitudeを使用してみましたか?aptitudeインストールmysql-server-5.1
Chris_O

ええ、同じエラーを試してみました。
アリハント

ポート3306がSSHトンネルによって使用されたときに、mysql-serverをインストールする非常に類似した症状がありました。気づくまでにしばらく時間が
かかりましたが

回答:


26

これは私のために働いた:

apt-get purge mysql-server
apt-get purge mysql-common
rm -rf /var/log/mysql
rm -rf /var/log/mysql.*
rm -rf /var/lib/mysql
rm -rf /etc/mysql
# and then:
apt-get install mysql-server --fix-missing --fix-broken

ただし、mysqlのすべての依存関係も削除されます。

また、既存のデータベースを削除し、最初にバックアップします!

ソース


+1私にとってもうまくいきました!
クリスマッコーリー

Ubuntu 12.04 LTSおよびMySQL 5.5.34で動作します。
クリスピー

+1も私のために働きました。私はapt-get purge mysql-serverを試しましたが、apt-get purge mysql-commonは試していませんでした。ありがとう。
ダビデヴェルニッツィ14

2
警告:これはすべてのデータベースを削除し、最初にバックアップします!
パントロ

1
動作します、ありがとう。動作しない場合、なぜ動作しないのかわかりません。動作するとき、なぜ動作するのかわかりません。
銭チェン

5

いくつかの提案:

  • 明らかなのは、rootとして実行していることを確認してください。
  • apt-get remove mysqlを実行してみてください。
  • 次に、apt-get purgeを実行してみてください (apt-get purge mysqlが必要になる場合がありますが、aptitudeがうるさい場合もあります)。
  • 常にログを確認してください。彼らはほとんどすべての答えを保持するでしょう。
  • また、apt-get clear cacheapt-get cleanを実行してみてください。その後、もう一度インストールしてください。

または、Googleで見つけたこのソリューションを試してください:

mysql-server-5.1パッケージは、パッケージのインストール後にMySQLを起動しようとしますが、失敗します。最初に行う必要があるのは、インストールプロセスを完全に終了することです。これを行うには、いくつかの方法があります。

MySQL構成を修正し、/ etc / init.d / mysql-serverが機能することを確認し、dpkg --configure -aを起動してインストールプロセスを完了します。または/var/lib/dpkg/info/mysql-server-5.1.postinstを編集してサーバーを起動する部分を削除し(おそらく/etc/init.d/mysql-server startなどを呼び出します)、dpkgを起動します- configure -aを使用してインストールプロセスを完了し、構成を修正します。


1
インストールをパージして再試行するためのアドバイスに同意する
-jamespo

そのディントワーク!!
アリハント

2

MySQLは起動に失敗しました。これが発生した理由は、/ var / log / mysql.logに記録する必要があります(または、まだ/var/lib/mysql/.err?)。そこから出力を貼り付けることができますか?


/var/log/mysql.errおよび/var/log/mysql.logの両方のファイルは空です。
アリハント

以下は/usr/local/mysql/clc.errの出力です。file.clcはホスト名20:50:31 mysqld_safe / var / lib / mysql 110402 20:50:31のデータベースでmysqldデーモンを起動します[警告]できませんテストファイル/var/lib/mysql/clc.lower-test 110402 20:50:31を作成[警告]テストファイル/var/lib/mysql/clc.lower-test 110402 20:50:31 [エラー]を作成できません]致命的エラー:ユーザー 'mysql'として実行するように変更できません。ユーザーが存在することを確認してください!110402 20:50:31 [エラー] 110402 20:50:31の中止[注意] / usr / sbin / mysqld:シャットダウン完了110402 20:50:31 pidファイル/var/lib/mysql/clc.pidからmysqld_safe mysqldが終了しました
アリハント

たぶん1)mysqlユーザーが存在しない、または2)/ var / lib / mysqlがmysqlユーザーに所有されていませんか?2)の場合、-Rを忘れないでください。
-Bittrance

これは/ etc / passwdファイルエントリです: 'mysql:x:118:128:MySQL Server ,,,:/ var / lib / mysql:/ bin / false'。私はすでにchown -R mysql / var / lib / mysql ..を完了しています
。– Arihant

apt-get purge mysql-server `* MySQLデータベースサーバーmysqldの停止* MySQLデータベースサーバーmysqldの起動[失敗] invoke-rc.d:initscript mysql、アクション" start "が失敗しました。dpkgの:エラー処理のMySQLサーバ-5.1(--configure)は:サブプロセスインストールインストール後のスクリプト返されるエラー終了ステータス1 E:サブプロセスは/ usr / binに/ dpkgのは、(1) `エラーコードを返し 、私は理解してカントである理由削除するときにmysql-serverサービスを開始します。
アリハント

1

別のコンソールを開き、入力します ps aux | grep mys

そして、次のようなものをすべて殺します。

egrep -qi ... /etc/mysql/

これにより、インストールが完了します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.