Błąd upuszczania bazy danych (nie można rmdir '.test\', errno: 17)
Zasadniczo uczono mnie, jak utworzyć hasło roota za pomocą polecenia" mysqladmin-u root-p password", zostało to zrobione przez edytor poleceń windows. Następnym procesem było wyświetlenie domyślnych baz danych (info. schema, mysql i test), który został osiągnięty za pomocą "Pokaż bazy danych;"
Ale zgodnie z książką, musieliśmy usunąć zbędny plik testowy i wyskakuje następujący błąd:
Błąd zrzucania bazy danych (nie można rmdir '.test\', errno: 17)
Użyte polecenie To DROP DATABASE test;
Używam MYSQL i PHPMYADMIN. Jakaś pomoc, jak upuścić plik bez błędów?
17 answers
Baza danych jest reprezentowana przez katalog w katalogu danych (Zwykle /var/lib/mysql
), a katalog jest przeznaczony do przechowywania danych tabeli.
Instrukcja DROP DATABASE
usunie wszystkie pliki tabeli, a następnie usunie katalog, który reprezentował bazę danych. Nie usunie jednak plików spoza tabeli, co uniemożliwia usunięcie katalogu.
MySQL wyświetla komunikat o błędzie, gdy nie można usunąć katalogu
Naprawdę można upuścić bazę danych ręcznie usuwając pozostałe pliki w katalogu bazy danych, a następnie sam katalog.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2019-07-09 07:07:29
Natknąłem się na ten sam problem przy nowej instalacji mysql 5.5 na Macu. Próbowałem zrzucić schemat testowy i dostałem komunikat errno 17. errno 17 to błąd zwracany przez niektóre funkcje systemu posix, wskazujący, że plik istnieje tam, gdzie nie powinien. W katalogu danych Znalazłem dziwny plik ".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
Raz rm ' D The .pusty plik, polecenie drop database powiodło się.
Nie wiem gdzie .pusty plik pochodzi z; jak wspomniano, była to nowa instalacja mysql. Być może coś poszło nie tak w procesie instalacji.Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-04-15 16:47:48
Przejdź do datadir dla instalacji mysql i rm bazy danych ręcznie. Może być
/usr/local/var/mysql
Wtedy,
rm -R <Your DB name>
Aby sprawdzić datadir dla Twojej instalacji,
vim the mysql.server file and find it there.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-03-16 10:50:44
Dla phpmyadmin , Przejdź do xampp\mysql\data i po prostu usuń folder bazy danych. Zadziałało na mnie !!
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-05-30 11:47:56
Jeśli jest to XAMPP, wykonaj następujące czynności:
cd /opt/lampp/var/mysql;
sudo su;
rm -rf test;
Mam nadzieję, że to pomoże.Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-11-15 06:49:02
Właśnie natknąłem się na ten problem z WAMP i phpMyAdmin, który jest z nim związany. Aby usunąć bazę danych i usunąć błąd. Wszedłem do C:\wamp\bin\mysql\mysql5.5.24\data\
i usunąłem folder dla danej bazy danych.
Potem odświeżyłem stronę w phpMyAdmin, A bazy danych już nie było.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-04-28 17:10:19
Aby dodać do odpowiedzi do tej pory: w Windows 10 Pliki Danych są przechowywane tutaj...
C:\ProgramData\MySQL\MySQL Serwer [m. n] \ data
W Twojej bazie danych będą Katalogi dla każdego schematu. Będziesz chciał wejść do schematu, który próbujesz upuścić, ręcznie usuń zbędne pliki, a następnie spróbuj ponownie użyć polecenia upuść.
Wszelkie zmiany workbench w bazie danych zostaną zapisane w tej lokalizacji. Na przykład, miałem ten błąd po reverse engineering ćwiczenia na jednej z moich baz danych i zapisywanie zmian, które są przechowywane w .plik mwb w tej lokalizacji.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-12-14 13:01:14
Możesz usunąć dane z katalogu sql.
Dla mnie używałem AMPPS na windows 10. Poszedłem do katalogu instalacyjnego AMPPs. dla mnie było :
D:\Program Files (x86)\Ampps\mysql\data
Ponieważ mam go zainstalowany na moim drugim dysku.
Następnie odśwież swojego klienta SQL, a zobaczysz, że go nie ma.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-08-09 19:19:32
Być może będziesz musiał sprawdzić dwie rzeczy.
1- Database Foleder ' s permission baza danych, którą chcesz usunąć, musi mieć tego samego właściciela co proces mysql.
2- Katalog musi być pusty Przejdź do katalogu danych mysql i sprawdź, czy katalog jest pusty
Następnie podłącz swój mysql cli i uruchom ponownie polecenie Drop database.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-09-05 12:18:55
Przejdź przez to i usuń odpowiednie pliki pamięci podręcznej w wybranym db, a następnie po upuszczeniu bazy danych
Najpierw znajdź swój katalog danych MySQL zawierający wybrany DB
Linux
- Otwórz plik konfiguracyjny MySQL: less / etc / my.cnf
-
Szukaj wyrażenia "datadir": / datadir
-
Jeśli istnieje, podświetli linię, która brzmi: datadir = [Ścieżka]
Można również ręcznie szukać za tę linię. Zazwyczaj można go znaleźć w nagłówku sekcji [mysqld] , ale niekoniecznie musi być tam znaleziony.
Jeśli ta linia nie istnieje, wtedy MySQL będzie domyślnie ustawione na: / var/lib / mysql.
Okna 1. Otwórz plik konfiguracyjny MySQL w Notatniku: my.ini
My.ini będzie znajdować się w folderze programu MySQL, który będzie wszędzie tam, gdzie został zainstalowany. Jeśli nie zainstalowałeś MySQL, użyj systemu Windows funkcja "szukaj", aby wyszukać mój.ini. Można go również ręcznie wyszukać, przeglądając stronę [drive]:\Program Files\MySQL\MySQL Server 5.5.
Wykonaj wyszukiwanie w notatniku, aby znaleźć termin "datadir".
-
Jeśli istnieje, podświetli linię, która brzmi: datadir = [Ścieżka]
Możesz również ręcznie wyszukać tę linię. Zazwyczaj można go znaleźć w nagłówku sekcji [mysqld], ale niekoniecznie musi być znaleziony tam.
Jeśli ta linia nie istnieje, prawdopodobnie znajdziesz ją pod [drive]:\ProgramData\MySQL\MySQL Server 5.5\data.
Uwaga: folder "ProgramData" może być ukryty. Może być konieczne wpisanie jawnej ścieżki do Windows Explore
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2019-06-11 04:54:26
mysql -s -N -username -p information_schema -e 'SELECT Variable_Value FROM GLOBAL_VARIABLES WHERE Variable_Name = "datadir"'
Polecenie wybierze wartość tylko z wewnętrznej bazy danych MySQL information_schema i wyłączy tabelaryczne wyjścia i nagłówki kolumn.
Wyjście na Linuksa [mój wynik]:
/var/lib/mysql
Lub
mysql> select @@datadir;
NA MYSQL CLI
A następnie
cd /var/lib/mysql && rm -rf test/NOTEMPTY
zmień ścieżkę na podstawie wyniku
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2020-04-16 13:27:40
W moim przypadku nie widziałem żadnych tabel pod moją bazą danych na phpMyAdmin
używam Wamp server
ale kiedy sprawdziłem katalog pod C:\wamp\bin\mysql\mysql5.6.12\data
znalazłem to employed.ibd
Kiedy ręcznie usunąłem ten plik byłem w stanie drop
bazy danych z phpMyAdmin
płynnie bez żadnych problemów.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-01-29 09:42:07
W moim przypadku problemem był szczątkowy plik zrzutu w katalogu bazy danych. Ten plik został prawdopodobnie wygenerowany podczas testu skryptu zapasowego, nad którym pracowałem. Po ręcznym usunięciu pliku mogłem następnie upuścić bazę danych.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-03-04 14:42:33
Miałem ten sam problem (mysql 5.6 na mac) z ' can ' t rmdir..'- błędy podczas upuszczania baz danych. Pozostawienie pustego katalogu bazy danych nie jest możliwe do pozbycia się. Dzięki @Framework i @Beel za rozwiązania.
Najpierw usunąłem katalog db z terminala w (/Applications/XAMPP/xamppfiles/var / mysql).
Dla dalszych spadków db, usunąłem również pusty plik testowy. W moim przypadku plik nazywał się NOTEMPTY, ale nadal zawiera 0:
sudo ls -al test
total 0
drwxrwx--- 3 _mysql _mysql 102 Mar 26 16:50 .
drwxrwxr-x 18 _mysql _mysql 612 Apr 7 13:34 ..
-rw-rw---- 1 _mysql _mysql 0 Jun 26 2013 NOTEMPTY
Chmod najpierw a potem
sudo rm -rf test/NOTEMPTY
Żadnych problemów z upuszczaniem baz danych po tym
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-04-07 13:04:34
Po prostu przejdź do katalogu danych w moim przypadku ścieżka to "wamp \ bin \ mysql \ mysql5.6. 17\data" tutaj zobaczysz folder wszystkich baz danych po prostu usuń ten folder bazy danych db automatycznie spadnie:)
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-05-20 06:06:08
Napotkałem ten problem i kiedy sprawdziłem katalog bazy danych, było kilka plików exp
(Pliki ibd
i frm
zostały usunięte). Lista plików w celu sprawdzenia ich atrybutów (ponieważ właściciel miał już uprawnienia rw na plikach)
lsattr *.exp
-------------e-- foo.exp
-------------e-- bar.exp
Strona Man mówi
The 'e' attribute indicates that the file is using extents for mapping the blocks on disk.
It may not be removed using chattr(1).
Możesz rzeczywiście chattr -e
Te pliki, ale mysql nadal nie pozwoli ci upuścić bazy danych. Usunięcie plików za pomocą rm
pozwala jednak na usunięcie bazy danych.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2020-01-24 13:56:31
Dzieje się tak, ponieważ możesz skopiować folder bazy danych /var / lib / mysql z innego serwera na swój serwer. Ale nie skopiowałeś tych plików: / var / lib / mysql / ib_buffer_pool / var / lib / mysql / ibdata1 / var / lib / mysql / ib_logfile0 / var / lib / mysql / ib_logfile1 / var / lib / mysql / ibtmp1 Możesz więc utworzyć nową bazę danych i tabele, które możesz upuścić, ale nie możesz upuścić baz danych, które skopiowałeś z innego serwera i nie możesz również eksplorować tej samej bazy danych, którą skopiowane z innego serwera. Więc skopiowałem również te pliki: ib_buffer_pool, ibdata1, ib_logfile0,ib_logfile1, ibtmp1 po tym wszystkim wszystko działało.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2020-03-16 10:17:49