sql >> Databasteknik >  >> RDS >> Mysql

Tabeller jag skapar som börjar med dotNetChat_ försvinner efter omstart av MySQL

Jag skulle säga att MySQL av någon anledning nekas åtkomst till InnoDB-filer, som den sedan inte kan ladda, och fortsätter utan dem. Kan du verifiera att din process inte körs två gånger, och att MySQL-användare körs under ett konto som har tillgång till MySQL lib-katalogen.

Jag baserar mina resultat på detta fel:

[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.

Och fel 32, baserat på http://msdn.microsoft.com/en-us/library/windows/desktop/ms681382(v=vs.85).aspx betyder:

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

Vilket betyder, som sagt, att filer låses av en annan process. Och det händer när du startar om MySQL för när du skapar dem har MySQL dem öppna och en annan process kan inte låsa dem. Så snart MySQL-tjänsten stoppas (för omstart) låser en annan process filerna och MySQL kan inte öppna dem när den startar upp igen.

För att se låsta filer på ditt system och vilken process som håller det låst kan du använda http://technet.microsoft.com/en-us/sysinternals/bb896655.aspx

Du skulle behöva köra CMD Prompt som administratör och skriva något i stil med:

handle.exe thepwf_

Vilket ska visa vilken process som håller filerna låsta.

Låt mig veta vad du hittar.




  1. Oracle direktlastade INSERT genom JDBC?

  2. Skapa visuell databas med MySQL Workbench

  3. Är inte PHPs nollvärde lika med MySQL:s nollvärde?

  4. Mysql localhost !=127.0.0.1?