rodrigosantosbr

ERROR: new encoding (UTF8) is incompatible with the encoding

Aug 19th, 2019
56
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!

During database installation

pg_restore -h localhost -p 5432 -U postgres -d <database_name> -v <database_file>

The message appears:

ERROR:  new encoding (UTF8) is incompatible with the encoding of the template database (SQL_ASCII)
HINT:  Use the same encoding as in the template database, or use template0 as template.

Solution:

First, we need to drop template1.
Templates can’t be dropped, so we first modify it so t’s an ordinary database:

UPDATE pg_database SET datistemplate = FALSE WHERE datname = 'template1';

Now we can drop it:

DROP DATABASE template1;

Now its time to create database from template0,
with a new default encoding:

CREATE DATABASE template1 WITH TEMPLATE = template0 ENCODING = 'UNICODE';

Now modify template1 so it’s actually a template:

UPDATE pg_database SET datistemplate = TRUE WHERE datname = 'template1';

Now switch to template1 and VACUUM FREEZE the template:

\c template1
VACUUM FREEZE;

Problem should be resolved.

https://gist.github.com/amolkhanorkar/8706915

Add Comment
Please, Sign In to add comment