[mysql] 데이터베이스 삭제 오류 ( ‘.test \’를 rmdir 할 수 없음, 오류 번호 : 17)

기본적으로 “mysqladmin -u root -p password”명령을 사용하여 루트 암호를 만드는 방법을 배웠습니다.이 모든 작업은 Windows 명령 편집기를 통해 수행되었습니다. 이제 다음 프로세스는 “SHOW DATABASES;”를 사용하여 얻은 기본 데이터베이스 (정보 스키마, mysql 및 테스트)를 표시하는 것입니다.

그러나 책에 따르면 중복 테스트 파일을 삭제해야했고 다음과 같은 오류가 나타납니다.

데이터베이스 삭제 오류 ( ‘.test \’를 rmdir 할 수 없음, 오류 번호 : 17)

사용 명령은 다음과 같습니다. DROP DATABASE test;

MYSQL과 PHPMYADMIN을 사용하고 있습니다. 오류없이 파일을 삭제하는 방법에 대한 도움이 있습니까?



답변

데이터베이스는 데이터 디렉토리 (일반적으로 /var/lib/mysql) 아래의 디렉토리로 표시되며 디렉토리는 테이블 데이터 저장을위한 것입니다.

DROP DATABASE명령문은 모든 테이블 파일을 제거한 다음 데이터베이스를 나타내는 디렉토리를 제거합니다. 그러나 테이블이 아닌 파일은 제거하지 않으므로 디렉토리를 제거 할 수 없습니다.

MySQL은 디렉토리를 제거 할 수 없을 때 오류 메시지를 표시합니다.

데이터베이스 디렉토리에서 나머지 파일을 제거한 다음 디렉토리 자체를 제거하여 데이터베이스를 수동으로 삭제할 수 있습니다.


답변

Mac에 mysql 5.5를 새로 설치할 때 이와 동일한 문제가 발생했습니다. 테스트 스키마를 삭제하려고했는데 errno 17 메시지가 표시되었습니다. errno 17은 일부 posix os 함수에 의해 반환 된 오류로 파일이 존재하지 않아야 함을 나타냅니다. 데이터 디렉토리에서 이상한 파일 “.empty”를 찾았습니다.

sh-3.2# ls -la data/test
total 0
drwxr-xr-x   3 _mysql  wheel  102 Apr 15 12:36 .
drwxr-xr-x  11 _mysql  wheel  374 Apr 15 12:28 ..
-rw-r--r--   1 _mysql  wheel    0 Mar 31 10:19 .empty

.empty 파일을 rm’d하면 drop database 명령이 성공했습니다.

.empty 파일의 출처를 모르겠습니다. 언급했듯이 이것은 새로운 mysql 설치였습니다. 설치 과정에서 문제가 발생했을 수 있습니다.


답변

mysql 설치를 위해 datadir로 이동하고 데이터베이스를 수동으로 rm합니다. 그것은 될 수 있습니다

/usr/local/var/mysql

그때,

rm -R <Your DB name>

설치를 위해 datadir을 확인하려면

vim the mysql.server file and find it there.


답변

들어 phpMyAdmin을 로 이동 \ mysql을 \ 데이터 XAMPP 단순히 데이터베이스 폴더를 삭제합니다. 나를 위해 일했습니다!!


답변

XAMPP 인 경우 다음을 수행하십시오.

cd /opt/lampp/var/mysql;
sudo su;
rm -rf test;

도움이 되었기를 바랍니다.


답변

방금 WAMP와 함께 제공되는 phpMyAdmin 에서이 문제가 발생했습니다. 데이터베이스를 제거하고 오류를 없애기 위해. C:\wamp\bin\mysql\mysql5.5.24\data\문제의 데이터베이스 폴더 로 이동 하여 삭제했습니다.

그런 다음 phpMyAdmin에서 페이지를 새로 고쳤고 데이터베이스가 사라졌습니다.


답변

지금까지 응답에 추가하기 만하면됩니다. Windows 10에서는 데이터 파일이 여기에 보관됩니다.

C : \ ProgramData \ MySQL \ MySQL 서버 [mn] \ data

데이터베이스의 각 스키마에 대한 디렉토리가 있습니다. 삭제하려는 스키마 내부로 이동하여 불필요한 파일을 수동으로 삭제 한 다음 drop 명령을 다시 시도하십시오.

데이터베이스에 대한 모든 워크 벤치 변경 사항은이 위치에 저장됩니다. 예를 들어, 데이터베이스 중 하나에서 리버스 엔지니어링 연습을 수행하고이 위치의 .mwb 파일에 저장된 변경 사항을 저장 한 후이 오류가 발생했습니다.