PostgreSQL
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> PostgreSQL

Lỗi trong diễn biến trên Heroku

Nếu bạn đang gửi đến Heroku 1.sql tệp được tạo cho H2 , rất có thể chúng sẽ xung đột, thay vào đó, hãy đặt url của Heroku trong application.conf dưới dạng db.default.url và chạy nó ở chế độ dev trên localhost trước để tạo Postres SQL hợp lệ. Ngoài ra, bạn sẽ cần nhận xét về db.default.userdb.default.password cài đặt, vì URL của Heroku đã chứa thông tin này.

Nếu bạn không biết URL của kết nối hiện tại, bạn sẽ tìm thấy nó trên:

https://postgres.heroku.com/ -> YourDBs -> db-name -> Connection settings -> JDBC URL

Để kết nối từ máy chủ cục bộ (hoặc máy khác, không phải trong không gian của Heroku), bạn cần thêm thông số này vào URL:

&ssl=true&sslfactory=org.postgresql.ssl.NonValidatingFactory

Nhờ cách tiếp cận này, bạn có thể kiểm tra ứng dụng của mình cục bộ với kết nối được thiết lập với DB của Heroku từ xa, (đừng ngạc nhiên - sự kết hợp đó sẽ chậm hơn nhiều so với làm việc với local app + local DB hoặc Heroku app + Heroku DB ) dù sao để thử nghiệm, tốt hơn là liên tục đẩy các bản sửa lỗi nhỏ lên đám mây.

Ngoài ra, bạn sẽ có thể thực hiện các bước phát triển từ localhost - mà không cần đẩy mã sang Heroku và cách tiếp cận thực sự ngắn hơn nếu bạn gặp sự cố trong SQL của mình.

Ngoài ra, đây là dịp tốt để bật tính năng ghi nhật ký SQL ở chế độ nhà phát triển cục bộ và tìm kiếm các truy vấn SQL dư thừa, nếu bạn loại bỏ tất cả các truy vấn không cần thiết và hài lòng trên localhost, sau khi triển khai lên Heroku, bạn sẽ hài lòng hơn nhiều:)

Đặt lại

Nếu bạn sẽ tạo 1.sql thích hợp thì hầu hết có lẽ bạn sẽ cần đặt lại DB của mình có cấu trúc không hợp lệ (vì tôi cho rằng đó không phải là vấn đề khi bạn vừa chuyển từ cục bộ sang Heroku). Trước tiên, hãy tìm tên của DB cho ứng dụng hiện tại (với bash, trong thư mục của ứng dụng):

heroku pg

Và sau đó đặt lại nó bằng (nó sẽ phá hủy tất cả dữ liệu vì vậy hãy cân nhắc sao lưu trước nếu bạn không muốn mất dữ liệu của mình!):

heroku pg:reset HEROKU_DATABASE_SOMEBASE


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm thế nào để trích xuất năm và tháng từ ngày trong PostgreSQL mà không sử dụng hàm to_char ()?

  2. Lỗi Postgres:Nhiều hơn một hàng được trả về bởi một truy vấn con được sử dụng làm biểu thức

  3. Tìm giá trị không chứa số trong PostgreSQL

  4. Cách hoạt động của hàm Power () trong PostgreSQL

  5. PostgreSQL là cơ sở dữ liệu tốt nhất thế giới