데이터베이스를 구성하는 많은 파일이 /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
로 이동되었기 때문일 수 있습니다 . 이 경우 위의 작업도 "해당 파일 또는 디렉터리 없음" 오류와 함께 실패합니다. 이 명령을 사용하여 문제를 해결한 후 이 답변 상단에 있는 두 명령을 다시 실행하세요.test_db
/var/lib/mysql/data/test_db/test_db/...
rmdir
sudo mv /var/lib/mysql/data/test_db/test_db /var/lib/mysql
답변2
당신의 명령:
sudo mv /var/lib/mysql/test_db/ /var/lib/mysql/data/test_db/
모바일용입니다/var/lib/mysql/test_db/
~에 /var/lib/mysql/data/test_db/
, 그리고 마침내 /var/lib/mysql/data/test_db/test_db/
. 하지만 /var/lib/mysql/data/test_db/
존재하지 않기 때문에 오류가 발생합니다.
다음을 실행해야 합니다:
sudo mv /var/lib/mysql/test_db/ /var/lib/mysql/data/
이미 /var/lib/mysql/test_db/
이사했습니다 /var/lib/mysql/data/
.