Chapter 49. ���ݿ�����洢

Table of Contents
49.1. ���ݿ��ļ�����
49.2. TOAST
49.3. ���ݿ��ҳ�ļ�

���¶� PostgreSQL ���ݿ�ʹ�õ������ʽ����һ��������

49.1. ���ݿ��ļ�����

�������ļ��͵IJ���������洢��ʽ��

���ݿ⼯Ⱥ����Ҫ���������ݶ��洢�ڼ�Ⱥ������Ŀ¼� ͨ���� PGDATA �����ã��õ��ǿ��Զ���֮�Ļ������������֣��� PGDATA ��һ������λ���� /var/lib/pgsql/data�� ��ͬ postmaster ����Ķ����Ⱥ��������ͬһ̨�����Ϲ��档

PGDATA Ŀ¼����������Ŀ¼�Լ�һЩ�����ļ��� �� Table 49-1 ������ʾ��������Щ��Ҫ�Ķ���֮�⣬ ��Ⱥ�������ļ� postgresql.conf��pg_hba.conf�� �� pg_ident.conf ͨ�����洢�� PGDATA �����ܴ� PostgreSQL 8.0 ��ʼ�����ǿ��԰����Ƿ��ڱ�ĵط�����

Table 49-1. PGDATA������

������
PG_VERSIONһ������ PostgreSQL ���汾�ŵ��ļ�
base����ÿ�����ݿ��Ӧ����Ŀ¼����Ŀ¼
global������Ⱥ��Χ�ı����Ŀ¼������pg_database
pg_clog���������ύ״̬���ݵ���Ŀ¼
pg_subtrans����������״̬���ݵ���Ŀ¼
pg_tblspc����ָ���ռ�ķ������ӵ���Ŀ¼
pg_xlog���� WAL ��Ԥд��־���ļ�����Ŀ¼
postmaster.optsһ����¼ postmaster ���һ������ʱʹ�õ������в������ļ�
postmaster.pidһ�����ļ�����¼�ŵ�ǰ�� postmaster PID �͹����ڴ�� ID ���� postmaster �ر�֮�󲻴��ڣ�

���ڼ�Ⱥ���ÿ�����ݿ⣬�� PGDATA/base �ﶼ��һ����Ŀ¼��Ӧ�� ��Ŀ¼������ʱ�����ݿ��� pg_database ��� OID�� �����Ŀ¼ʱ�����ݿ��ļ���ȱʡλ�ã��ر�ֵ��һ����ǣ������ݿ��ϵͳ��洢�ڴˡ�

ÿ������������洢�ڶ������ļ���Ըñ���߸������� filenode �������� ���ǿ����� pg_class.relfilenode �ҵ���

Caution

��ע�⣬��Ȼһ����� filenode ͨ�������� OID ��ͬ����ʵ��������������ˣ� ��Щ���������� TRUNCATE��REINDEX��CLUSTER �Լ�һЩ����� ALTER TABLE ��ʽ�������Ըı� filenode ��ͬʱ���� OID�� ���Dz�Ӧ�ü��� filenode �ͱ� OID ��ͬ��

�ڱ������������ 1Gb ֮�����ͱ����ѳ�һ����С������ ��һ���ε��ļ����� filenode ��ͬ�����Ķ�����Ϊ filenode.1��filenode.2���ȵȡ� �����İ��ű�������ijЩ���ļ���С���Ƶ�ƽ̨�ϵ����⡣��������������� Section 49.3 ���н�һ�����ۡ�

һ���������Щ�ֶ�������ܴ洢�൱������ݣ���ô�ͻ��и�������� TOAST �� ���ڴ洢�޷��ڱ���������з��µ�̫����������ݡ� ����еĻ���pg_class.reltoastrelid ��һ�������ӵ����� TOAST �� ���ġ�Section 49.2����ȡ������Ϣ��

��ռ�������ø�����Щ��ÿ���û�����ı�ռ䶼�� PGDATA/pg_tblspc Ŀ¼������һ���������ӣ���ָ������ı�ռ�Ŀ¼�������� CREATE TABLESPACE �������������Ǹ�Ŀ¼������������������ñ�ռ�� OID �����ġ� �������ռ����棬Ϊÿ���������ռ�����Ԫ�ص����ݿⶼ��һ����Ŀ¼�� ���Ǹ����ݿ�� OID ��������Ŀ¼��ı���ѭ filenode ���������� pg_default û��ͨ�� pg_tblspc ���������Ƕ�Ӧ PGDATA/base�� ���ƵĻ��У�pg_global û��ͨ�� pg_tblspc ���������Ƕ�Ӧ PGDATA/global��