更新数据库中的某一行时,会出现锁定超时。其他行更新没关系。MySQL InnoDB解锁一行
#1205 - Lock wait timeout exceeded; try restarting transaction
我该如何解锁这个特定的行?
以下是两个相关的表格。我正在尝试更新用户的电子邮件。我不认为租客应该引起任何问题。
CREATE TABLE IF NOT EXISTS `mydb`.`user` (
`username` VARCHAR(45) NOT NULL ,
`email` VARCHAR(60) NOT NULL ,
`password` VARCHAR(45) NOT NULL ,
`created` TIMESTAMP NULL DEFAULT NULL ,
`last_login` TIMESTAMP NULL ,
PRIMARY KEY (`username`))
ENGINE = InnoDB;
CREATE TABLE IF NOT EXISTS `mydb`.`tenant` (
`id` INT NOT NULL AUTO_INCREMENT ,
`username` VARCHAR(45) NOT NULL ,
`address` VARCHAR(90) NULL ,
`company` VARCHAR(45) NULL ,
`phone` VARCHAR(25) NOT NULL ,
`fax` VARCHAR(25) NULL ,
`notes` TEXT NULL ,
`contacts` TEXT NULL ,
PRIMARY KEY (`id`) ,
INDEX `fk_tenant_user1` (`username` ASC) ,
CONSTRAINT `fk_tenant_user1`
FOREIGN KEY (`username`)
REFERENCES `mydb`.`user` (`username`)
ON DELETE CASCADE
ON UPDATE NO ACTION)
ENGINE = InnoDB;
救生员,谢谢,我在生产中遇到同样的问题! – 2013-12-13 19:00:05