sql >> Database >  >> RDS >> Mysql

Tabellen die ik maak die beginnen met dotNetChat_ verdwijnen na het herstarten van MySQL

Ik zou zeggen dat om de een of andere reden MySQL de toegang tot InnoDB-bestanden wordt ontzegd, die het vervolgens niet kan laden en zonder deze verder gaat. Kunt u controleren of uw proces niet twee keer wordt uitgevoerd en dat de MySQL-gebruiker wordt uitgevoerd onder een account dat toegang heeft tot de MySQL-lib-directory.

Ik baseer mijn bevindingen op deze fout:

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

En fout 32, gebaseerd op http://msdn.microsoft.com/en-us/library/windows/desktop/ms681382(v=vs.85).aspx betekent:

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

Wat betekent, zoals ik al zei, dat bestanden worden vergrendeld door een ander proces. En het gebeurt wanneer u MySQL opnieuw start, want wanneer u ze maakt, heeft MySQL ze open en kan een ander proces ze niet vergrendelen. Zodra de MySQL-service wordt gestopt (voor herstart), vergrendelt een ander proces de bestanden en MySQL kan ze niet openen wanneer het opnieuw opstart.

Om vergrendelde bestanden op uw systeem te zien en welk proces het vergrendeld houdt, kunt u http://technet.microsoft.com/en-us/sysinternals/bb896655.aspx

U zou CMD Prompt als beheerder moeten uitvoeren en zoiets intypen als:

handle.exe thepwf_

Die zou moeten laten zien welk proces de bestanden vergrendeld houdt.

Laat me weten wat je vindt.




  1. MySQL-clienttoepassingen gebruiken

  2. Hoe het tijdgedeelte van een datetime-waarde (SQL Server) te verwijderen?

  3. Wat zijn JDBC-mysql-stuurprogramma-instellingen voor een gezonde omgang met DATETIME en TIMESTAMP in UTC?

  4. orakel - dezelfde zoekopdracht maar ander plan in 11g en 12c