18.3. ģ�����ݿ�

CREATE DATABASE ʵ������ͨ������һ�����е����ݿ���й����ġ� ȱʡʱ�����������ֽ� template1 �ı�׼ϵͳ���ݿ⡣ ���Ը����ݿ��Ǵ��������ݿ��"ģ��"�������� template1 ���Ӷ�����Щ���󽫱���������󴴽����û����ݿ��С� ��������Ϊ����ڵ�����ݿ��еı�׼�׼������޸ġ� ���磬�����ѹ������� PL/pgSQL ��װ�� template1 ���ô���ڴ����û����ݿ��ʱ�����Ǿͻ��Զ��ɵã�������Ҫ����Ķ�����

ϵͳ�ﻹ�еڶ�����׼��ϵͳ���ݿ⣬�� template0�� ������ݿ������ template1 һ��ʼʱһ�����������ݣ� Ҳ����˵��ֻ����ʹ�õİ汾�� PostgreSQL ��׼�Ķ����� initdb ֮�����Dz�Ӧ�ö� template0 ���κ��޸ġ�ͨ������ CREATE DATABASE ʹ�� template0 ������ template1 ���п����� ����Դ���һ��"����"���û����ݿ⣬����������κ� template1 ��ڵ������еĶ����� ��һ���ڻָ� pg_dump ת����ʱ���Ƿdz�����ģ� ת���ű�Ӧ����һ����������ݿ��лָ���ȷ�����Ǵ����˱�ת���������ݿ��е���ȷ���ݣ� �������κ����ڿ����Ѿ������� template1 �еĸ��������ͻ��

Ҫͨ������ template0 �ķ�������һ�����ݿ⣬ ʹ��

CREATE DATABASE dbname TEMPLATE template0;

������������ SQL ������ģ��������� shell ��

createdb -T template0 dbname

���ǿ��Դ��������ģ�����ݿ⣬����ʵ�������ǿ�����һ����Ⱥ��ͨ���� CREATE DATABASE ��ģ������Ϊ��Ӧ�����ݿ��������κ����ݿ⡣ ���������DZ������ף�������ܲ���һ���Ե�"COPY DATABASE"���ߡ� ʵ���ϣ��ڿ��������Ĺ����У�Դ���ݿ�����ǿ���״̬��û�����ڴ���������޸����񣩡� CREATE DATABASE �ڲ�����ʼʱ������ȷ��û�лỰ�������Լ����⣩��Դ���ݿ����ӣ� �������������ܱ�֤�ڿ��������в��ᷢ���޸ĵ����飬���������Щ���飬��ô�ᵼ��һ����һ�µĽ�����ݿ⡣ ��ˣ����ǽ�����Щ����ģ������ݿ�Ӧ�õ���ֻ����Դ���

�� pg_database �����������õı�־��������ÿ�����ݿ⣺ �ֶ� datistemplate �� datallowconn�� datistemplate ��ʾ�����ݿ���׼������ CREATE DATABASE ��ģ��ġ� ��������������־����ô�����ݿ�������κ��� CREATEDB Ȩ�޵��û���¡�����û�����ã���ôֻ�г����û��͸����ݿ�������߿��Կ�¡���� ��� datallowconn Ϊ�٣���ô��������������ݿⷢ���κ��µ����ӣ��������еĻỰ������Ϊ�Ѹñ�־����Ϊ�ٶ���ɱ������ template0 ���ݿ�ͨ�������Ϊ datallowconn = false �Ա���������޸ġ� template0 �� template1��Ӧ�����DZ��Ϊdatistemplate = true��

���ģ�����ݿ��׼��֮�󣬻��߶�ij�����ݿ������κα���޸�֮�� �ڸ����ݿ���ִ��һ�� VACUUM FREEZE ��һ�������⡣ �������Щ��ʱ����ͬһ�����ݿ���û�������򿪵�������ôϵͳ��֤�����ݿ��е�����"����"�ģ� ���Ҳ��������� ID �ص���Ӱ�졣�����������Щ datallowconn ����Ϊ�ٵ����ݿ��ر���Ҫ�� ��Ϊ�����������ݿ���û�а취���ճ�ά���Ե�VACUUM�� ���� Section 21.1.3 ��ȡ������Ϣ��

ע��: template1 �� template0 û���κ������״̬�� ���� template1 ��������� CREATE DATABASE �Լ������� createdb �����ij����ȱʡԴ���ݿ���֮�⡣ ���磬���ǿ���ɾ�� template1��Ȼ��� template0 �д��������������κβ���Ч����������Dz�С���� template1 �����һ����������ô���ǾͻὨ���������IJ�����