2012-07-10 30 views
49
Jupitor$ bundle exec rake db:create db:migrate 
APP_development already exists 
rake aborted! 
PG::Error: ERROR: invalid value for parameter "TimeZone": "UTC" 
: SET time zone 'UTC' 

Tôi tiếp tục gặp lỗi này khi cố di chuyển sang cơ sở dữ liệu postgres của mình. trợ giúp sẽ được nhiều đánh giá cao!Lỗi Postgres "giá trị không hợp lệ cho tham số" TimeZone ":" UTC ""

+2

Lệnh 'SET time zone 'UTC'' hoạt động trong bản cài đặt PostgreSQL 9.1.4 của tôi. –

+1

Bạn đang sử dụng phiên bản PostgreSQL nào? Liệu 'SET múi giờ 'UTC'' làm việc trong một giao diện điều khiển psql cho bạn? –

+0

Tôi đang sử dụng 9.1.4 ở đâu/làm cách nào để nhập múi giờ SET 'UTC'? –

Trả lời

76

Tôi đã gặp vấn đề tương tự khi sử dụng Postgres.app từ Heroku. Khởi động lại máy Mac của tôi đã giải quyết nó.

+0

Thật lạ, đã thử khởi động lại ứng dụng và đặt múi giờ. Không làm việc, sau đó khởi động lại mac và bùng nổ, không có vấn đề. – Steve

+3

Tôi gặp sự cố này sau khi cài đặt lại đăng xuất thông qua brew. Khởi động lại mac đã giúp. – maicher

+0

khởi động lại postgresql sau khi vấn đề sửa lỗi nâng cấp "pg_ctl restart" – Jerzyk

6

Tôi cũng gặp sự cố này.

Đăng nhập vào cơ sở dữ liệu sau đó phát hành:

set time zone utc; 
+12

Không làm việc cho tôi. L ERI: giá trị không hợp lệ cho tham số "TimeZone": "utc" –

11

Thử khởi động lại máy chủ. Tôi đã cập nhật Postgresql thông qua Homebrew nhưng quên khởi động lại máy chủ và gặp vấn đề tương tự. Tôi tin rằng đó là do các phiên bản máy khách và máy chủ không khớp. psql bắt đầu bằng:

$ psql 
psql (9.1.4, server 9.1.2) 
Type "help" for help. 
6

Tôi không nghĩ rằng tôi xứng đáng có bất kỳ điểm nào cho điều đó nhưng khởi động lại Postgres.app của tôi (tốt hơn là khởi động lại toàn bộ hệ thống) đã giải quyết nó cho tôi. Ứng dụng không hiển thị trên Dock, bạn có thể tìm thấy ứng dụng đó trên thanh điều hướng ở đầu cửa sổ của bạn. Hy vọng nó sẽ giúp anyway.

2

Điều gì thực sự xảy ra là bạn đã nâng cấp máy chủ postgresql và dọn dẹp các thư mục cũ nhưng bạn chưa khởi động lại máy chủ postgresql của mình. Máy chủ đã tìm kiếm các tệp múi giờ trong thư mục đã xóa

1

Chỉ cần tham khảo nhanh cho những người không sử dụng Postgres.app, nhưng bắt đầu psql từ dòng lệnh hoặc thông qua launchctl. Bạn sẽ cần phải điều chỉnh các điều sau cho nơi bạn có dữ liệu Postgres và tệp nhật ký của mình tại:

pg_ctl stop 
pg_ctl start -D /usr/local/pgsql/data/ -l /usr/local/pgsql/log/server.log 
+0

Tôi đã làm chính xác điều này. Tôi đang sử dụng để bắt đầu/dừng postgres từ các thiết bị đầu cuối trên Mac và điều này chỉ làm việc tốt – sebasjimenez10

54

Khởi động lại công việc postgresql.

Để khởi động lại nếu bạn đã cài đặt nó bằng cách sử homebrew, brew info postgresql sẽ nói với bạn:

launchctl unload ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist 
launchctl load ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist 
+5

Đó là đúng, điều này xảy ra bởi vì PostgreSQL đã được nâng cấp nhưng không khởi động lại. – Fred

+0

Cảm ơn, tôi sẽ ngạc nhiên nếu khởi động lại thực sự là câu trả lời duy nhất. – sirdharma

1

chỉ khởi động lại cơ sở dữ liệu giúp. Homebrew cập nhật cài đặt Postgres của tôi và tôi chưa khởi động lại.

2

Trong trường hợp của tôi, khởi động lại cơ sở dữ liệu không hữu ích. Cập nhật tzdata (apt-get install tzdata) đã thực hiện thủ thuật cho tôi.

+0

Cảm ơn bạn, nó đã làm việc cho tôi; – Mohsen

3

Nếu không có cách nào khác khắc phục và bạn tình cờ sử dụng homebrew, rất có thể bạn gặp sự cố với các liên kết hiện tại.

Giả sử bạn có hai phiên bản Postgres được cài đặt, đảm bảo bạn hủy liên kết và sau đó liên kết lại. Trong trường hợp của tôi, tôi cần hai phiên bản làm việc để chạy pg_upgrade. Tôi có postgresql95postgresql vì vậy tôi đã làm:

$ brew unlink postgresql 
$ brew unlink postgresql95 
$ brew link postgresql95 
$ brew link --overwrite postgresql 

Đó đã cho tôi cả hai làm việc tại cùng một thời gian. Hy vọng nó sẽ trở nên hữu ích vì nó đã cho tôi một thời gian tốt để con số đó ra!

Các vấn đề liên quan