为了优化SELECT语句,我尝试使用MySQL中的以下SQL语句使索引成为唯一:
ALTER TABLE credentials DROP INDEX special_credential_id, ADD这意味着,如果创建唯一索引失败,旧的special_credential_id索引还会存在吗?通常,创建一个新索引很容易,但是我们要讨论的是一个包含100个Mio条目的表。
在运行以下SQL语句之后,您将看到,在运行了MySQL first ALTER TABLE语句之后,已经在tag_id列上自动创建了非唯一索引ALTER TABLE。但是在第二个 ALTER TABLE语句运行之后,我认为MySQL还应该为我在question_id列上自动创建另一个非唯一的索引question_tag_question_id_question_id但是,从SHOW INDEXES语句输出中可以看到,
我的数据库是mysql5.7,innodb,已提交隔离级别。我害怕死锁,所以我保持mysql sql语句简单,只有:
insert into ... where ...insert into ... where ... on duplicate key update每个sql将只有上面的一条语句。例如:连接exec insert into ... where ...;一次,永远不要执行多语句insert ... where ...; update ... where ...; where语句</e