2017-11-14 14 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. someDBフォルダーを削除し、サーバを再起動、MySQL-Serverを停止します。
  3. MySQL-Server全体を削除してもう一度再インストールしました。

試してみた後、本当に助けてください。

EDIT: は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あなたは一日中提供したリンクの回答に従っています。まだ。 そして、私は特権を再帰的に変更しました。 – Mike

答えて

0

を@Beelする

クレジットそれは私が論理的な間違いを持っ​​ていることが判明しました。

someDB.sqlファイルの中には、USEという文が使用されています。しかし、私は、このコマンドを使用してデータベースを実行しようとしています:上記の文はsqlファイルの最初の行(すなわちDROP SCHEMA...)と競合USEを促しているため、絶対に間違っている

mysql -u root -p someDB < someDB.sql 

を。

それを行うための正しい方法は次のとおりです。

mysql -u root -p < someDB.sql 

USE文がすでにファイルに配置されているので!

0

その中にはexampleのように最初に削除する必要があります。

関連する問題