Tecnología

Inicio

Cómo convertir PostgreSQL a UTF-8

La conversión de una base de datos PostgreSQL a UTF-8 es muy útil cuando se desea almacenar datos que no se pueden representar usando el valor por defecto "LATIN1" codificación, como el texto árabe. UTF-8 es una codificación popular para el juego de caracteres Unicode, que es compatible con el tradicional codificación ASCII. A diferencia de ASCII, la mayoría de las lenguas del mundo se puede escribir utilizando el juego de caracteres UTF-8. La conversión de una base de datos a UTF-8 se realiza por vertido el contenido actual a través de un analizador de UTF-8, la eliminación del racimo, la creación de un nuevo grupo y base de datos con codificación UTF-8 y luego importar los datos en la nueva base de datos.

Instrucciones

1 Exportar sus datos con la codificación UTF-8 mediante la ejecución del siguiente comando en el símbolo del sistema desde el directorio de PostgreSQL:

pg_dump --blobs --oids --encoding = UTF-8 my_db> MY_DB.utf8.sql

Reemplazar "my_db" con el nombre de su base de datos. Asegúrese de que los servicios que utilizan la base de datos PostgreSQL se apagan antes de exportar sus datos.

2 La caída de la agrupación PostgreSQL actual y crear uno nuevo que utiliza codificación UTF-8 escribiendo los siguientes comandos:

pg_dropcluster --stop $ principal de la versión

pg_createcluster --start -e UTF-8 $ principal VERSIÓN

La cadena "$ VERSIÓN" representa la versión de PostgreSQL.

3 Crear una nueva base de datos UTF-8 codificada escribiendo el comando siguiente:

Bryan psql < "CREATE my_db BASE DE DATOS CON PLANTILLA = template0 PROPIETARIO = miusuario encoding =" UTF-8 ";"

4 Configurar los nombres de usuario y contraseñas que desea utilizar en la nueva base de datos o restaurar las anteriores desde un script de copia de seguridad.

5 Importar los datos convertidos en la nueva base de datos UTF-8 codificada escribiendo el comando siguiente:

psql --set = ON_ERROR_STOP en my_db <MY_DB.utf8.sql

Su nueva base de datos debe contener ahora los datos codificados con UTF-8.

Consejos y advertencias

  • Se recomienda que realice una copia de seguridad completa del sistema antes de intentar convertir su base de datos PostgreSQL a UTF-8.