首頁 >Java >java教程 >在生產中使用 Hibernate 的 `hbm2ddl.auto=update` 是個好主意嗎?

在生產中使用 Hibernate 的 `hbm2ddl.auto=update` 是個好主意嗎?

DDD
DDD原創
2024-12-08 16:25:12648瀏覽

Is Using Hibernate's `hbm2ddl.auto=update` in Production a Good Idea?

在生產環境中建議使用 Hibernate 自動架構更新 (hbm2ddl.auto=update) 嗎?

在生產環境中,強烈建議使用 Hibernate 進行自動架構更新 (hbm2ddl.auto=update)?不鼓勵使用 Hibernate 並將 hbm2ddl.auto 配置設定為「更新」。此設定允許 Hibernate 自動更改資料庫模式以符合 Java 類別定義,這在生產環境中可能是一個重大的安全性問題。

儘管 Hibernate 團隊不斷改進自動模式更新,但在生產極不安全。手動模式更新有幾個優點:

  • 控制和審查:DBA 可以在應用建議的模式變更之前徹底審查它們,確保正確性並避免潛在的錯誤。
  • 自訂補丁:特定的資料庫特徵可以透過建立精心製作和自訂的補丁來解決已測試。
  • 效能最佳化:與 Hibernate 的自動更新不同,手動修補程式可以針對特定資料庫系統進行最佳化,從而提高效能。

雖然自動架構更新可能會起作用儘管它們在開發環境中表現良好,但它們在生產中的行為可能會有很大差異。即使它們運行正確,也可能不是最佳的,因為資料庫專業人員(例如 DBA)專門從事資料庫最佳化以提高效率和可靠性。

以上是在生產中使用 Hibernate 的 `hbm2ddl.auto=update` 是個好主意嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn