Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Tworzone przeze mnie tabele zaczynające się od dotNetChat_ znikają po ponownym uruchomieniu MySQL

Powiedziałbym, że z jakiegoś powodu MySQL nie ma dostępu do plików InnoDB, których następnie nie może załadować i działa bez nich. Czy możesz sprawdzić, czy Twój proces nie jest uruchamiany dwukrotnie i czy użytkownik MySQL jest uruchamiany na koncie, które ma dostęp do katalogu MySQL lib.

Swoje ustalenia opieram na tym błędzie:

[ERROR] InnoDB: Failed to find tablespace for table "thepwf_prgminteractions"."dotnetchat_testtable" in the cache. Attempting to load the tablespace with space id 24.
2014-03-05 18:05:33 0x1f30  InnoDB: Operating system error number 32 in a file operation.
InnoDB: The error means that another program is using InnoDB's files.
InnoDB: This might be a backup or antivirus software or another instance
InnoDB: of MySQL. Please close it to get rid of this error.

I błąd 32, oparty na http://msdn.microsoft.com/en-us/library/windows/desktop/ms681382(v=vs.85).aspx oznacza:

ERROR_SHARING_VIOLATION
32 (0x20)
The process cannot access the file because it is being used by another process.

Co oznacza, jak powiedziałem, że pliki są blokowane przez inny proces. Dzieje się tak po ponownym uruchomieniu MySQL, ponieważ podczas ich tworzenia MySQL ma je otwarte, a inny proces nie może ich zablokować. Jak tylko usługa MySQL zostanie zatrzymana (w celu ponownego uruchomienia), inny proces blokuje pliki, a MySQL nie może ich otworzyć po ponownym uruchomieniu.

Aby zobaczyć zablokowane pliki w systemie i który proces je blokuje, możesz użyć http://technet.microsoft.com/en-us/sysinternals/bb896655.aspx

Musisz uruchomić CMD Prompt jako administrator i wpisać coś takiego:

handle.exe thepwf_

Które powinny pokazać, który proces blokuje pliki.

Daj mi znać, co znalazłeś.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. łączenie łączenia z powrotem do tabeli docelowej

  2. Sekwencja zwraca tabelę sprzężenia w zapytaniu

  3. MySQL; Najlepszy typ danych dla dużych liczb

  4. Załaduj plik csv z określonymi kolumnami za pomocą PDO

  5. Ukryte funkcje MySQL