ฉันพยายามอัพเกรด Postgresql จาก 9.2 เป็น 9.3 ใน Fedora 18 โดยใช้คำสั่งนี้เป็นผู้ใช้ postgres
$ pg_upgrade -b /bin -B /usr/pgsql-9.3/bin -d /var/lib/pgsql/data -D /var/lib/pgsql/9.3/data/ -j 2 -u postgres
ข้อผิดพลาดในบันทึก
คำสั่ง: "/ bin / pg_ctl" -w -l "pg_upgrade_server.log" -D "/ var / lib / pgsql / data" -o "-p 50432 -b -c Listen_addresses = '' -c unix_socket_permissions = 0700 -c unix_socket_directory = '/ var / lib / pgsql' "start >>" pg_upgrade_server.log "2> & 1 กำลังรอให้เซิร์ฟเวอร์เริ่ม .... FATAL: พารามิเตอร์การตั้งค่าที่ไม่รู้จัก" unix_socket_directory ".... หยุดรอ pg_ctl: ไม่สามารถเริ่มได้ เซิร์ฟเวอร์
ตามที่ชี้โดยa_horseในความคิดเห็นที่พารามิเตอร์ถูกแทนที่ด้วยunix_socket_directories
(พหูพจน์) ใน 9.3 แต่เวอร์ชันเซิร์ฟเวอร์ที่กำลังเริ่มต้นนั้นเป็นรุ่นเก่า 9.2:
$ /bin/pg_ctl --version
pg_ctl (PostgreSQL) 9.2.4
ความคิดใด ๆ
postgres --describe-config | grep -o 'unix_socket_director\w*'
unix_socket_directories
: postgresql.org/docs/current/static/release-9-3.html#AEN114343