私の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
たとえば(ルートとして)コピーします。cp -R /var/lib/mysql /tmp/mysql.bck
答え3
異なるリポジトリが異なるバージョンのmysql-serverを提供しているようです。どのリポジトリを実行しているかわからないため、どのリポジトリを無効にするかをお知らせできません。私はCentOSを実行していると仮定していますが、yumの何でも構いません。
またrepoquery
、(install yum-utils
)を使用してmysql-serverパッケージがインストールするファイルとデータベースがどこにあるかを確認できます(またはパッケージがMySQLをインストールする方法の場合はinitスクリプトを見つけることができます)。
他の作業を実行する前に、次のステップはデータベースファイル自体をバックアップすることです。データを回復するにはこの情報が必要です。
実行中のMySQLの正しいバージョンが見つかったら、正しいバージョンの新しいボックスをインストールし(AmazonのEC2があなたの友達です)、新しくインストールされたバージョンにデータファイルをコピーします。可能(これが大きく、MySQLでは実行しない場合)mysqldump
データベースで実行できます。
あなたの元の質問については、通常のパッケージがインストールされているデータベースを壊すとは思わないが、mysql-server
あなたのデータをそこに入れることはないだろう。
頑張ってください。
答え4
私はしよyum remove mysql-commutity-server
うとしています。セントース6
/var/lib/mysqlを削除しようとしています。したがって、削除する前にそこからdatadirを移動することをお勧めします。