yum remove mysql-server はデータベースを削除しますか?

yum remove mysql-server はデータベースを削除しますか?

MySQL サーバーが故障してしまいましたが、原因がわかりません。yum の再インストールを試みると、次のエラーが表示されます: エラー: mysql-server が mysql-server と競合しています

サーバーにすでに MySQL サーバーが存在し、アップグレードを実行したときにすべてが台無しになったためだと思われます。

MySQL にアクセスできないため、mysqldump も実行できません。既存のデータベースを危険にさらすことなく再インストールするにはどうすればよいでしょうか?

答え1

パッケージmysql-serverは、削除またはインストール時にユーザー データに触れないように設計されています。発生している問題は、i386 パッケージがインストールされているのに、代わりに x86_64 パッケージが必要であるか、またはその逆である可能性があります。続行するには、完全な yum 出力が必要になります。

答え2

mysql を再インストールする場合は、すべてのデータが にあることに注意してください/var/lib/mysql( を確認してくださいmy.conf)。すべてのデータを別のフォルダにコピーしてから、変更を行ってください。

リポジトリをチェックして並べ替え、最初から MySQL をインストールすることもできます。これらすべてを実行して、次回は注意する方が安全です。再インストールの前に、次の 2 つのことを行ってください。

  • mysql のバージョンを確認してください。
  • たとえば、次のようにコピーします/var/lib/mysql(root として):cp -R /var/lib/mysql /tmp/mysql.bck

答え3

異なるリポジトリによって、異なるバージョンの mysql-server が提供されているようです。どのリポジトリを実行していたかは不明なので、どのリポジトリを無効にするかはわかりません。CentOS を実行していると想定していますが、yum であれば何でもかまいません。

repoqueryまた、 ( とともにインストールされます) を使用して、mysql-server パッケージによってインストールされたファイルとデータベースが配置されている場所を確認することもできますyum-utils(または、パッケージが MySQL をインストールする方法である場合は、初期化スクリプトを見つけます)。

次に、他の作業を行う前に、データベース ファイル自体をバックアップします。データの回復を望む場合は、データベース ファイルが必要になります。

実行しているMySQLの正確なバージョンがわかったら、そのバージョンの新しいボックス(AmazonのEC2が便利です)をインストールし、データファイルを新しくインストールしたものにコピーします。5月(ここでは大きな if であり、MySQL が起動している状態では実行しないでください)mysqldumpデータベースで実行できるようにします。

元の質問に関して言えば、正常なパッケージがインストールされたデータベースを破壊することはないと思いますmysql-serverが、あなたのデータを賭けるつもりはありません。

幸運を。

答え4

私はただやろうとしyum remove mysql-commutity-serverセントオス6 /var/lib/mysql を削除しようとしました。そのため、アンインストールする前にそこから datadir を移動したほうがよいでしょう。

関連情報