2017-11-14 29 views
0

그것은 미친 짓입니다. 모든 방법을 시도했지만 여전히 같은 오류가 발생합니다. 나는 데이터베이스가오류 떨어 데이터베이스 (RMDIR 수 없다 './someDB/'의 errno : 17)

, 그것은 MySQL-Server에서 실행합니다. 데이터베이스의 시작 부분에서 :

DROP SCHEMA IF EXISTS someDB; 
CREATE SCHEMA someDB; 
USE someDB; 

내가 SHOW DATABASES LIKE 'someDB';을 시도 그것의 존재를 확인합니다.

내가 시도 :

  1. chmod/var/lib/mysql/someDB/someDB.sql
  2. MySQL-Server 중지 그것의 전체 경로를,하여 someDB 폴더를 삭제하고 서버를 다시 시작.
  3. 나는 전체 MySQL-Server을 제거하고 다시 재설치. 노력의 시간 후

, 나는 정말 당신이 도움이 필요합니다.

편집 : 는 Y. Collin Comment, 내가 sudo ls -la ./someDB을 실행할 때, 그것은 반환 응답 :

ls -la ./someDB/ 

파일이있는 경우 : 다음 명령을 실행 누가 있는지 무엇을

total 20 
drwxrwxr-x 2 ubuntu ubuntu 4096 Nov 14 16:53 . 
drwxrwxrwx 5 mysql mysql 4096 Nov 14 16:53 .. 
-rwxrwxrwx 1 ubuntu ubuntu 12243 Nov 14 16:53 someDB.sql 
+0

someDB 디렉토리에'chmod -R'이 있습니까? – Pete

+0

https://stackoverflow.com/questions/4584458/error-dropping-database-cant-rmdir-test-errno-17#4584523 – Pete

+0

@Pete I 링크에 대한 답변 다음되어 당신을 하루 종일 제공하고, 더 운이 없다 아직. 그리고 예, 재귀 적으로 권한을 변경했습니다. – Mike

답변

0

@Beel합니다. someDB.sql 파일 내부

, 나는 USE 문을 사용하고 있습니다. 그러나, 나는이 명령을 사용하여 데이터베이스를 실행하려고 : 위의 문이 sql 파일의 첫 번째 라인 (즉 DROP SCHEMA...)와 충돌 USE 메시지를 표시하기 때문에 절대적으로 잘못된 것입니다

mysql -u root -p someDB < someDB.sql 

합니다.

을 수행하는 올바른 방법은 다음과 같습니다 USE 문이 이미 파일에 저장됩니다

mysql -u root -p < someDB.sql 

때문에!

0

이 경우에는 example과 같이 먼저 삭제해야합니다.

크레딧은 내가 논리적 실수가 밝혀졌다