ฉันกำลังทำงานกับโปรเจ็กต์ Spring boot ของฉันและสังเกตเห็นว่าบางครั้งมีข้อผิดพลาดการหมดเวลาการเชื่อมต่อไปยังฐานข้อมูลของฉันบนเซิร์ฟเวอร์อื่น (SQL Server) สิ่งนี้เกิดขึ้นเป็นพิเศษเมื่อฉันพยายามย้ายสคริปต์บางอย่างด้วยFlyWay
แต่มันใช้งานได้หลังจากพยายามหลายครั้ง
จากนั้นฉันสังเกตว่าฉันไม่ได้ระบุ spring.jpa.hibernate.ddl-auto
ในไฟล์คุณสมบัติของฉัน ฉันได้ทำการวิจัยและพบว่ามีการแนะนำให้เพิ่ม
spring.jpa.hibernate.ddl-auto= create-drop
การพัฒนา และเปลี่ยนเป็น: spring.jpa.hibernate.ddl-auto= none
ในการผลิต
แต่ฉันไม่เข้าใจจริงๆว่ามันทำงานอย่างไรและไฮเบอร์เนตสร้างสคีมาฐานข้อมูลโดยใช้create-drop
หรือnone
ค่าได้อย่างไร คุณช่วยอธิบายในทางเทคนิคได้ไหมว่ามันทำงานอย่างไรและคำแนะนำสำหรับการใช้คุณสมบัตินี้ในการพัฒนาและบนเซิร์ฟเวอร์ที่ใช้งานจริงคืออะไร ขอบคุณ
none
แต่คุณอาจต้องการให้ Hibernate Search และ Envers ตารางของคุณถูกสร้างขึ้นโดยใช้update
เนื่องจากมีการจัดการภายในโดยโครงการเหล่านั้นและคุณไม่ต้องการจัดการด้วยตนเองด้วยตนเอง ตอนนี้เราควบคุมสิ่งนี้ทั่วโลกสำหรับตารางทั้งหมดโดยไม่คำนึงถึงที่มา / แหล่งที่มา นี่จะเป็นเหตุผลในการใช้ตัวเลือกเฉพาะผู้ขายเพิ่มเติมหากคุณต้องการใช้สิ่งนี้