ฉันเพิ่งอ่านว่าเนื่องจาก InnoDB คำนวณค่า AUTO_INCREMENT ใหม่เมื่อเซิร์ฟเวอร์รีสตาร์ตระเบียนใด ๆ ที่อยู่ท้ายสุดของรายการรหัสอาจมีการนำ ID กลับมาใช้ใหม่
ปกติแล้วนี่ไม่ใช่ปัญหาเพราะเมื่อผู้ใช้ลบทุกอย่างที่เกี่ยวข้องกับ ID จะถูกลบออกจากตารางอื่นด้วย
แต่ฉันจงใจปล่อยให้โพสต์ฟอรัมของพวกเขากำพร้าติดป้ายว่า "โพสต์โดย = ผู้ใช้ # 123 =" ดังนั้นการสนทนาที่ผ่านมาจะถูกเก็บไว้ เห็นได้ชัดว่าควรใช้ ID ซ้ำนี่จะเป็นปัญหา
ฉันไม่เคยมีปัญหานี้มาก่อนเพราะมีผู้ใช้ใหม่เพียงพอที่จะทำให้ ID ไม่สามารถนำมาใช้ซ้ำได้ด้วยวิธีนี้ อย่างไรก็ตามในการสมัครสมาชิกโครงการใหม่ของฉันนั้นหายากและการลบผู้ใช้ที่ไม่ได้ใช้งานบ่อย (โดยเฉพาะอย่างยิ่งเนื่องจากบัญชี "Open Alpha" ใช้งานได้ล่าสุดเป็นเวลาสามวันในการแสดงตัวอย่าง) และการใช้ ID ดังกล่าวได้เกิดขึ้นสามครั้งในขณะนี้
ฉันได้ "แก้ไข" ปัญหาด้วยการบันทึกค่าที่ถูกต้องสำหรับ AUTO_INCREMENT ที่อื่นและใช้สิ่งนั้นแทนการพึ่งพาค่าภายใน มีวิธีการที่แท้จริงที่จะให้ InnoDB จดจำค่าสุดท้ายจริงหรือไม่