Avatar
1
Hihi Teacher
Hihi Teacher
Hỏi về Generate DDL Auto trong Spring
Xin chào mọi nguời ,

Trong quá trình làm đồ án tốt nghiệp em có dùng tính năng tự động generate các bảng trong DB từ các entity trong Java.Và em thường hay bị mắc lỗi là để giá trị của dòng spring.jpa.hibernate.ddl-auto= create khiến cho dữ liệu trong DB bị mất hết .Đối với dữ liệu test trong đồ án của em thì việc mất mát dữ liệu thì không thành vấn đề nhưng em nghĩ đối với dự án thật thì sẽ có vấn đề rất nghiêm trọng.Cho xin phép hỏi là :

  1. Trong dự án thực tế thì người ta có sử dụng spring.jpa.hibernate.ddl-auto  không ạ ? Vì em thấy khi dùng cái này thì khả năng bị mặc lỗi và mất  mát dữ liệu cũng có % thể xảy ra.
  2. Ở dự án thức tế thì ngoài cách kiểm tra cẩn thận trước khi làm 1 việc gì đó thì có cách nào để tránh mất toàn bộ dữ liệu kiểu như trên không ạ?

Em cám ơn ạ !

  • Answer
spring hibernate spring data jpa
Remain: 5
2 Answers
Avatar
tvd12 Teacher
tvd12 Teacher
  1. Trong dự án thực tế không bao giờ dùng spring.jpa.hibernate.ddl-auto em ạ
  2. Các dự án có sử dụng database đều phải phân quyền cẩn thận. Đa phần các tài khoản cấp cho code thường chỉ có chức năng insert, update, query mà không cho phép tạo bảng, xoá bảng hay delete em ạ. Ngoài ra phải có những bản backup db liên tục, tối đa phải là 7 ngày, tối thiểu có thể là 1 ngày hoặc 1 tiếng.
  • 0
  • Reply
theo e hiểu thì hình như cái này gọi là sync database với model phải không a ? nếu vậy thì khi sửa đổi db thì bên spring có tạo migration r chạy migrate như các fw khác k hay làm thế nào vậy ạ  –  Tuấn Nguyễn 1639043259000
  1. Kiểu vậy em ạ
  2. Anh có làm 1 dự án gen code java từ database, còn lại chưa làm dự án nào mà từ code java ddl-auto ra database cả em ạ. Vì nó quá rủi ro, nếu dev vô tình code sai có thể bị mất bảng thận chí mất cả database luôn.
 –  tvd12 1639210860000
Avatar
Hihi Teacher
Hihi Teacher
Dạ cám ơn anh rất nhiều về câu trả lời ạ.

Trong câu trả lời của anh có câu là "update DB liên tục..." cho em hỏi cái này theo em hiểu là backup data đúng không ạ ?

  • 0
  • Reply
Ừ, đúng rồi em ạ, anh gõ nhầm em ạ :D  –  monkey 1638925448000