powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / глюк при ресторе бд пгадмином - как этого избежать?
8 сообщений из 8, страница 1 из 1
глюк при ресторе бд пгадмином - как этого избежать?
    #34903733
Фотография aov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
бд в юникоде. такое вот сообщение:

pg_restore: [archiver (db)] Error from TOC entry 2668; 0 111912 TABLE DATA post_prices postgres
pg_restore: [archiver (db)] COPY failed: ERROR: invalid byte sequence for encoding "UTF8": 0xc009
HINT: This error can also happen if the byte sequence does not match the encoding expected by the server, which is controlled by "client_encoding".
CONTEXT: COPY post_prices, line 18505

в итоге имеем пустую таблицу post_prices :(. что бы это значило и как бы этого избежать? сейчас мне нужно было перенести изменённую бд с одной машины на другую. к счастью скрипт изменений я сохранил - и сейчас я просто вместо переноса ту бд этим скриптом подправлю. но на будущее это не всегда можно будет сделать :(. или изменения чтобы сохранить нужна большая внимательность чем у меня есть :) - или иногда требуется поставить базу там, где её вообще ещё не было - и с данными реальными. т.е. тут это уже не прокатит :(. так что нужно с этим разобраться. помогите плз кто знает. там сами данные пролистать не реально - табличка эта одна весит как половина бд. собственно так я и заметил это - резко уменьшился размер дампа - почти в 2 раза :). и данные там тоже не возможно предположить какие - туда грузятся в оригинальном виде прайсы поставщиков, присылаемые в excel - т.е. может быть там что угодно. но раньше таких приколов не было. грузятся данные из excel odbcшным провайдером. там сам постгрес при установке создает датасурс "PostgreSQL UNICODE" - т.е. кажися с кодировками там должно быть всё честно - и было вот до этого момента. базу эту я регулярно раз наверное 5 в неделю дампил и поднимал из дампа - пару месяцев уже. первый раз такой случился ляпсус.
помогите плз разобраться с этой фигнёй. да - всё это под виндой делается.
...
Рейтинг: 0 / 0
глюк при ресторе бд пгадмином - как этого избежать?
    #34923625
Фотография aov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ладно, если по другому попробовать: как в текстовом поле найти и зарубить invalid byte sequence for encoding "UTF8": 0xc009? есть правда подозрение, что такого там много. Вообще не оч я понял в чём проблема - везде эти данные нормально обрабатываются - кроме пгрестор :(. про
HINT: This error can also happen if the byte sequence does not match the encoding expected by the server, which is controlled by "client_encoding".
- это тоже брехня - я базу эту два месяца с дома на работу и обратно тягал - т.е. по2 раза на день дамп/рестор - и было всё нормально с клиентским энкодингом блин.
ещё подробность новая - как оказалось вирус этот сидит в прайсе одного поставщика - набраного руками в экселе 97-м :). именно из-за него вся запара. и теперь зараза эта распространилась на другую таблицу в бд - и теперь при ресторе не только прайсы поставщиков не восстанавливаются - но и ещё 2 таблицы и констрайнтов пара :(. и удалить теперь просто эти данные нельзя :(. и лечить как не знаю. помогите плз. а недоведи господи что-то с компом - и капец тогда вообще будет :(
ну хоть какие-то мысли, ну пожалуйста :(...
convert(from_encoding, to_encoding) - так блин не понятно from чего его конвертить...
или как в текстовом поле найти этот инвалидный байт секвенс? - попробовать чтоли - два вопроса - как - и скоко их там будет ещё...
или в каком направлении ещё можно подумать?
...
Рейтинг: 0 / 0
глюк при ресторе бд пгадмином - как этого избежать?
    #34924166
Shweik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я дико извиняюсь но это бредово выглядит - "проблемы с UNICODE,вызванные макровирусом"
Потому первой мыслю было: "и не надоело по виндовым граблям топтаться? Ведь кним могут и топор привязать."
Всё что могу сходу предложить - сдампить эти грешный post_prices c ключиками -d -D.
Конечно такой скрипт ресторится куда как медленней, но рестор сдохнет не вбив конкретный INSERT(-ы?). Далее - дело техники : Пропарсить поле на предмет битой кодировки? Перл Вам в руки, дорогой товарищ!
...
Рейтинг: 0 / 0
глюк при ресторе бд пгадмином - как этого избежать?
    #34926467
Фотография aov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
с перлом я совсем не дружу - чем дальше, тем больше понимаю что к сожалению :).
про -d -D - уже я тоже догадался. Токо тут что-то странное происходит с psql: он упорно не хотит вычитывать файл, заданый ключём \i. у него там почемуто хронический чёто-там аксес денаед - как-то так. как я не изголялся. ничего не понял. что бы это значило? а пгадмин почемуто тоже не хотит файл дампа открывать - не ругается и не показывает никак что его что-то в нём не устраивает - просто пустое окно там где текст должен быть. разбираться в причинах не хотелось - поэтому я изобрёл такую методику: открываю дамп сначала ноутпадом с указанием что это утф-8, потом копирую в окно пгадмина. он потом это дело нормально переваривает. такая блин методика монстрическая. а мне почти каждый день это делать - ну если не дадо - то как минимум оч желательно. надо блин срочно попроще что-то придумать. свои мысли пока закончились. может у кого какая мысля об этом проскочит - так вы её не прячьте - тут пишите :).
...
Рейтинг: 0 / 0
глюк при ресторе бд пгадмином - как этого избежать?
    #34926726
tkopets
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
посмотри на:
SHOW client_encoding;
и
SHOW server_encoding;
...
Рейтинг: 0 / 0
глюк при ресторе бд пгадмином - как этого избежать?
    #34926946
Фотография aov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
client - unicode - это кстати что конкретно? koi8r - или что?
server - utf8

это так на одной машине - дома. на работе посмотрю. сейчас у меня основные пробуксовки с поднятием дома дампа, сделанного на работе. на работе тоже поднимал этот дамп - всё те же симптомы. там видимо тоже как-то так.

да - а вообще проблемы начались с вгрузки в бд прайса одного - как позже выяснилось в excel 97 набраного руками. со многими другими проблем не было. блин нужно было его перед вгрузкой пересохранить в новом формате - думаю excel 2003 всё бы сам разрулил без меня. но теперь поздно - по нему теперь пошли заявки, резервы, ссылки на приход. вообще к учёту всё это отношения не имеет - так что в очень крайнем случае можно всё это грохнуть. однако не хочется терять история заказов и резервирования. она нужна. ну и вообще на будущее хотелось бы разобраться с полтергейстом этим.

это типа лирическое отступление :).
да - ну и что из этого - client/server-encoding? поставить pgclientencoding=unicode|koi8r - или что - не соображу? видимо нет же такой кодировки - unicode? или я что-то туплю...
...
Рейтинг: 0 / 0
глюк при ресторе бд пгадмином - как этого избежать?
    #34927019
Фотография aov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в мане написано utf8 - alias unicode. т.е. что - получается везде утф8? и ещё там про автоматическую конверсию кодировок - utf8 -->> all supported encodings.

вообще я тогда не понимаю в чём проблема. получается сплошной ок и вери гуд - а чего оно выдрючивается - х его знает :(
...
Рейтинг: 0 / 0
глюк при ресторе бд пгадмином - как этого избежать?
    #34927716
Rastafarra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
aovinvalid byte sequence for encoding "UTF8": 0xc009

было такое (или как минимум очеь похожее) при переходе с версии на версию на таблице с массивами в полях. решилось сдампливанием таблицы как insert и загоном ее в базу руками.

он отчего-то эти инсерты делал странные. пришлось прогонять чегеоз regexp-ы.
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / глюк при ресторе бд пгадмином - как этого избежать?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]