sql >> Database teknologi >  >> RDS >> PostgreSQL

heltal uden for rækkevidde og resterende diskplads for lille til at konvertere id til bigint og andre løsninger

Scott Marlowe og Vao Tsuns kommentarer virkede:

på (linux) server åbner en terminal

naviger til, hvor det nye navneområde skal være

lav en mappe:mkdir dirname

giv ejerskab til postgres:chown postgres:postgres dirname

opret tabel:CREATE TABLESPACE new_tbl_space LOCATION '/path/dirname'

sæt tabellen i tablespacet:alter table tbl set tablespace '/path/dirname'

gør det, der optog så meget diskplads:ALTER TABLE tbl ALTER COLUMN id TYPE BIGINT;

ændre tablespacet tilbage:alter table tbl set tablespace pg_default

fjern tablespacet:Jeg gjorde det i pgadmin4 i Tablespaces node/objekt

(Det var fra hukommelsen. Lad mig vide, hvis jeg gik glip af noget.)

Rediger:Dette har den bivirkning, at hele bordet omskrives som et fuldt vakuum, der frigør eventuel død diskplads.




  1. MySQL:summen af ​​hver dag

  2. Deallokering af forberedte forespørgsler

  3. Kopier data til en anden tabel

  4. Hvordan sletter man duplikerede poster?