PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

`pg_tblspc` hilang setelah penginstalan versi terbaru OS X (Yosemite atau El Capitan)

Terpecahkan... sebagian.

Rupanya, Menginstal versi terbaru OS X (mis. Yosemite atau El Capitan) menghapus beberapa direktori di /usr/local/var/postgres .

Untuk memperbaikinya, Anda cukup membuat ulang direktori yang hilang:

mkdir -p /usr/local/var/postgres/pg_commit_ts
mkdir -p /usr/local/var/postgres/pg_dynshmem
mkdir -p /usr/local/var/postgres/pg_logical/mappings
mkdir -p /usr/local/var/postgres/pg_logical/snapshots
mkdir -p /usr/local/var/postgres/pg_replslot
mkdir -p /usr/local/var/postgres/pg_serial
mkdir -p /usr/local/var/postgres/pg_snapshots
mkdir -p /usr/local/var/postgres/pg_stat
mkdir -p /usr/local/var/postgres/pg_stat_tmp
mkdir -p /usr/local/var/postgres/pg_tblspc
mkdir -p /usr/local/var/postgres/pg_twophase

Atau, lebih singkatnya (terima kasih kepada Nate ):

mkdir -p /usr/local/var/postgres/{{pg_commit_ts,pg_dynshmem,pg_replslot,pg_serial,pg_snapshots,pg_stat,pg_stat_tmp,pg_tblspc,pg_twophase},pg_logical/{mappings,snapshots}}

Menjalankan kembali pg_ctl start -D /usr/local/var/postgres sekarang memulai server secara normal dan, setidaknya bagi saya, tanpa kehilangan data.

PERBARUI

Di sistem saya, beberapa direktori itu kosong bahkan ketika Postgres sedang berjalan. Mungkin, sebagai bagian dari beberapa operasi "pembersihan", Yosemite menghapus direktori kosong? Bagaimanapun, saya melanjutkan dan membuat file '.keep' di setiap direktori untuk mencegah penghapusan di masa mendatang.

touch /usr/local/var/postgres/{{pg_commit_ts,pg_dynshmem,pg_replslot,pg_serial,pg_snapshots,pg_stat,pg_stat_tmp,pg_tblspc,pg_twophase},pg_logical/{mappings,snapshots}}/.keep

Catatan :Membuat .keep file di direktori tersebut akan membuat beberapa gangguan di file log Anda, tetapi tampaknya tidak berdampak negatif pada hal lain.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Simpan keluaran PL/pgSQL dari PostgreSQL ke file CSV

  2. django.db.utils.ProgrammingError:relasi app_user tidak ada selama uji manage.py

  3. Java - tanggal disimpan sebagai hari sebelumnya

  4. Postgresql Pilih baris di mana kolom =array

  5. Indeks GIN pada kolom smallint[] tidak digunakan atau operator kesalahan tidak unik