Mysql
同一數據庫中多次具有相同名稱的MySQL表
我在我們的 PROD 環境中偶然發現了一個非常討厭的錯誤
我正在執行一些更改腳本,它似乎最終為每個更改的列複製了表。
我用 MySQL Workbench、HeidSQL 和 DBBeaver 進行了測試,它們都顯示相同的重複結果。
請記住下面的範例它只是一個表,但我在同一個數據庫中有 4 個不同的表有這個問題
現在出現重複的任何表也在數據庫備份腳本中重複。如果我點擊並放下一個,所有條目都消失了。當我執行創建腳本時,表中的每一列都會相乘。
根據這個 CREATE 腳本下面的問題,這個腳本在轉儲腳本中是相同的。如果我放下桌子,所有條目都消失了。執行此腳本時,它們都回來了
DROP TABLE IF EXISTS `employee`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `employee` ( `id` int(11) NOT NULL AUTO_INCREMENT, `employeeNumber` varchar(45) DEFAULT NULL, `firstName` varchar(150) NOT NULL, `lastName` varchar(150) DEFAULT NULL, `email` varchar(150) NOT NULL, `phoneNumber` varchar(20) DEFAULT NULL, `address` varchar(250) DEFAULT NULL, `userId` int(11) NOT NULL, `merchantId` int(11) NOT NULL, `departmentId` int(11) NOT NULL, `startDate` date NOT NULL, `endDate` date DEFAULT NULL, `contract` tinyint(4) DEFAULT '0', `countryId` int(11) NOT NULL, `createdDate` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP, `modifiedDate` datetime DEFAULT NULL, `isActive` tinyint(4) NOT NULL DEFAULT '0', `contractIssueDate` datetime DEFAULT NULL, `visaType` varchar(45) DEFAULT NULL, `visaStartDate` datetime DEFAULT NULL, `visaEndDate` datetime DEFAULT NULL, `knownAs` varchar(45) DEFAULT NULL, `dateOfBirth` datetime DEFAULT NULL, `ppsNumber` varchar(15) DEFAULT NULL, `passOrIdNumber` varchar(45) DEFAULT NULL, `nokName` varchar(100) DEFAULT NULL, `nokAddress` varchar(200) DEFAULT NULL, `nokRelationship` varchar(100) DEFAULT NULL, `nokPhoneNumber` varchar(20) DEFAULT NULL, `lastModifiedUserId` int(11) DEFAULT NULL, `version` int(11) DEFAULT NULL, `honorificTitleId` int(11) NOT NULL DEFAULT '0', `genderId` int(11) NOT NULL DEFAULT '0', PRIMARY KEY (`id`), KEY `fk_country_idx` (`countryId`), KEY `fk_department_idx` (`departmentId`), KEY `fk_gender_idx` (`genderId`), KEY `fk_honorificTitle_idx` (`honorificTitleId`), KEY `fk_merchant_idx` (`merchantId`), CONSTRAINT `fk_country` FOREIGN KEY (`countryId`) REFERENCES `country` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `fk_dep` FOREIGN KEY (`departmentId`) REFERENCES `department` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `fk_gender` FOREIGN KEY (`genderId`) REFERENCES `gender` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `fk_honorificTitle` FOREIGN KEY (`honorificTitleId`) REFERENCES `honorificTitle` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `fk_merchant2` FOREIGN KEY (`merchantId`) REFERENCES `merchant` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; /*!40101 SET character_set_client = @saved_cs_client */;
任何有關如何預防或解決它的幫助將不勝感激。
謝謝
通過 Azure 幫助台解決了問題
問題是該參數
dir_cache_fine_grained_enabled
在 Azure 更新期間打開。這需要關閉並重新啟動數據庫伺服器。重啟後一切恢復正常該參數不向公眾提供。