データベースを構成する多くのファイルを/var/lib/mysql/test_db/
含むディレクトリがあります。
test_db
これで新しいディレクトリを作成しました。
/var/lib/mysql/data/
test_db
ディレクトリとその内容をdata
ディレクトリに移動しようとしています。
あちこちでいろいろ試してみました。
sudo mv /var/lib/mysql/test_db/ /var/lib/mysql/data/test_db/
しかし、引き続きエラーが発生します。
mv: cannot move /var/lib/mysql/test_db/ to /var/lib/msyql/data/test_db/: No such file or directory
しかし、私が実行した場合:
ls -lah
わかりました。
drwxrwxrwx 2 root root 32K Mar 27 15:58 test_db
drwxrwxrwx 3 mysql mysql 4.0K Mar 30 10:51 data
私が知る限り、これは両方ともディレクトリなので、両方が存在することを意味します。
ご覧のとおり、権限(chmod 777 test_db
)を変更しましたが機能しませんでした。
私は何を見逃していますか?
ベストアンサー1
ターゲットデータベースディレクトリを削除し、test_db
ディレクトリ自体を移動します。 (また、暗黙的にコンテンツを移動します。)
sudo rmdir /var/lib/mysql/data/test_db
sudo mv /var/lib/mysql/test_db /var/lib/mysql/data
通常、ディレクトリ名の後にスラッシュを付ける必要はありません。
ご意見をお読みになっても、「該当するファイルまたはディレクトリがありません」エラーが発生した場合、ソースディレクトリがターゲットディレクトリに移動された可能性がありtest_db
ます。この場合、上記の操作も「該当するファイルまたはディレクトリなし」エラーで失敗します。このコマンドを使用して問題を解決したら、この回答の上部にある2つのコマンドを再実行してください。test_db
/var/lib/mysql/data/test_db/test_db/...
rmdir
sudo mv /var/lib/mysql/data/test_db/test_db /var/lib/mysql