MariaDBをインストールしましたが、Mysqlに置き換わることに気づきませんでした。インストール中に、Mysqlデータディレクトリをmysql-5.7に移動しました。 MariaDBを削除してMysqlを再インストールし、データベースをmysql-5.7からmysqlに移動して、Mysqlを再起動するだけでデータベースを復元しようとしました。 mysqlは再び起動しないため、ここで提案されているようにmysqldumpを使用できません- mariadbへのアップグレード後にmysqlデータベースを復元する方法 。データベースを復元するにはどうすればよいですか?
参考までに、Ubuntu Server 16.04とMysql 5.7を実行しています。
私はこれを理解しました:
名前を変更したフォルダー(/var/lib/mysql_5.7)を安全な場所にコピーします。 (所有権と権限を保持している場合は、おそらく手順4でそれらの修正をスキップできます。)
MySQLをアンインストールし、/ var/lib /からすべてのmysql関連フォルダーを削除します。
MySQLを再インストールします。
新しい/ var/lib/mysql /ファイルとフォルダーの権限を確認します。バックアップしたファイルが一致しない場合は、一致するように修正します。 (私のものは
chown -R mysql:mysql location_to_backed_up_folder/
chmod 750 location_to_backed_up_folder/mysql/ location_to_backed_up_folder/any_other_folders/
chmod 640 location_to_backed_up_folder/all_other_files
Mysqlを停止します
バックアップしたフォルダーの名前を「mysql」に変更します
バックアップされたフォルダーとファイルを(所有権とアクセス許可を保持して)/ var/lib /にコピーします
cp -aR location_of_backed_up_folder/ /var/lib/
Mysqlを再起動します
一時的な場所にmysql-5.7のコピー(maria dbのインストール中に[/var/lib
)がある場合、Maria Dbの使用を継続できます。
これで、/var/lib
に、現在のデータベース(古いダンプなし)であるmysqlというフォルダーができます。
次に、mysqlを停止します。安全のため、/var/lib
のmysqlフォルダーをある場所に移動し、mysql-5.7フォルダーを/var/lib
に移動して、mysqlに名前を変更します。以前のmysqlフォルダーに設定したのと同じ特権を設定します。
Mysqlサービスを再起動します。これで古いダンプが得られます。