postgresql 创建数据库 ERROR: new encoding (UTF8) is incompatible

1.首先,我们需要删除template1的。模板不能被删除,所以我们首先修改它,设置成一个普通的数据库:
   登陆postgresql
     [root@  root]# su - postgres;
	 -bash-4.1$ psql
	 postgres=# UPDATE pg_database SET datistemplate = FALSE WHERE datname = 'template1';
	 
2.现在,我们可以删除它:
    postgres=# DROP DATABASE template1;
	
3.然后,重新创建一个template1数据库,设置默认编码:
    postgres=# CREATE DATABASE template1 WITH TEMPLATE = template0 ENCODING = 'UNICODE';
	
4.在把template1设置成为默认模板。
    postgres=# UPDATE pg_database SET datistemplate = TRUE WHERE datname = 'template1';
	
5.最后切换模板就可以了
    postgres=# \c template1
    template1=# VACUUM FREEZE;
    template1=# \q

到这里应该就可以了

相关推荐