PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

Грешка невалидна последователност от байтове при възстановяване на базата данни на PostgreSQL

По-старите версии на PostgreSQL не бяха толкова стриктни по отношение на съответствието с UTF-8, отколкото по-новите версии. Вероятно се опитвате да възстановите данни, съдържащи невалиден UTF-8, от такава по-стара версия в по-нова версия.

Невалидните низове трябва да бъдат изчистени. Можете да следвате тази процедура за всяка таблица, която не е импортирана поради тези грешки:

  1. Извлечете съдържанието на таблицата от дъмп файла в SQL обикновен текстов файл:

    pg_restore --table=tablename --data-only dumpfile >plaintext.sql
    
  2. Премахнете невалидните знаци в текстов редактор или автоматично с iconv :

    iconv -c -f UTF-8 -t UTF-8 <plaintext.sql >plaintext-cleaned.sql
    
  3. Импортирайте дезинфекцираните данни:

    psql dbname < plaintext-cleaned.sql
    



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Липсваща таблица при материализиран изглед

  2. postgresql, еквивалентен на $mysqli->insert_id

  3. PGError:няма връзка със сървъра след неактивност

  4. Някой имал ли е успех с използването на конкретен локал за база данни на PostgreSQL, така че сравнението на текст да не прави разлика между главни и малки букви?

  5. Добавете секунди към клеймото за време