PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

PG::Erreur :ERREUR :le nouveau codage (UTF8) est incompatible

Ok, les étapes ci-dessous ont résolu le problème :

  1. Tout d'abord, nous devons supprimer template1. Les modèles ne peuvent pas être supprimés, nous le modifions donc d'abord pour qu'il s'agisse d'une base de données ordinaire :

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

  2. Maintenant, nous pouvons le supprimer :

    DROP DATABASE template1;

  3. Il est maintenant temps de créer une base de données à partir de template0, avec un nouvel encodage par défaut :

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

  4. Modifiez maintenant template1 pour qu'il s'agisse d'un modèle :

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

  5. Passez maintenant au template1 et VACUUM FREEZE le template :

    \c template1

    VACUUM FREEZE;

Le problème devrait être résolu.