Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Переезд 8.1 -> 8.3 и смена кодировки latin1 -> unicode
|
|||
|---|---|---|---|
|
#18+
Привет, друзья. В связи с развитием проекта, возникла острая необходимость обновления базы до версии 8.3 (впечатлили результаты тестирования - особенно в части работы с дисковой подсистемой) и смена её кодировки на unicode (в целях создания мультиязычности). Погуглив, нашел нехитрый способ это сделать: сделать дамп, дропнуть старую базу, создать новую в юникоде и заресторить уже в новую базу. Однако при этом необходимо останавливать работу субд, а соответственно и ресурса, что недопустимо. Причем размер базы данных очень велик, а значит время переезда на юникод увеличивается, что увеличивает простой ресурса. Неужели никак нельзя сделать "по-горячему", без остановки работы субд? Может быть кто-то уже сталкивался с подобной задачей и может поделиться опытом? Или просто есть идеи как это проще сделать? Спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.04.2008, 12:35 |
|
||
|
Переезд 8.1 -> 8.3 и смена кодировки latin1 -> unicode
|
|||
|---|---|---|---|
|
#18+
Можно через репликацию SLONY. Создадите slave базу (8.3), потом сделаете switchover и отключите старый master (8.1). Время простоя ~ 5 минут на switchover. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.04.2008, 13:12 |
|
||
|
Переезд 8.1 -> 8.3 и смена кодировки latin1 -> unicode
|
|||
|---|---|---|---|
|
#18+
Да, можно, но к сожалению таким образом можно обновить субд до версии 8.3, что касается смены кодировки - тут slony видимо не подходят: http://wiki.linuxformat.ru/index.php/LXF91:PostgreSQLНа начало марта 2007 года последняя версия Slony I была 1.2.2. Для функционирования этой версии необходим PostgreSQL старше 7.3.3, так как требуется обязательная поддержка пространства имён (namespace). При репликации предполагается, что все базы данных создавались с указанием одной и той же кодовой страницы Или сейчас эта возможность уже присутствует? Текущая версия вроде бы 1.2.13 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.04.2008, 14:18 |
|
||
|
Переезд 8.1 -> 8.3 и смена кодировки latin1 -> unicode
|
|||
|---|---|---|---|
|
#18+
Дока 1.2.13 Slony-I assumes that they use identical encodings. ... If the encodings are "closely equivalent", you may be able to get away with them not being absolutely identical. For instance, if the origin system used LATIN1 and a subscriber used SQL_ASCII and another subscriber used UNICODE, and your application never challenges the boundary conditions between these variant encodings, you may never experience any problems. Там есть ньюансы, прочитайте 3.3. Database Encoding ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.04.2008, 16:02 |
|
||
|
Переезд 8.1 -> 8.3 и смена кодировки latin1 -> unicode
|
|||
|---|---|---|---|
|
#18+
Thamerlan , огромное спасибо. Еще один вопрос: возможен ли запуск 2-х серверов postgres на одном физическом сервере? Просто у нас всего один сервер для базы, хотелось бы просто запустить 8.3 там же, сделать репликацию и потом убрать старый 8.1. И если так можно, то во нагрузка на этом сервере, получается, возрастет в 2 раза? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2008, 22:25 |
|
||
|
Переезд 8.1 -> 8.3 и смена кодировки latin1 -> unicode
|
|||
|---|---|---|---|
|
#18+
holem Еще один вопрос: возможен ли запуск 2-х серверов postgres на одном физическом сервере? Просто у нас всего один сервер для базы, хотелось бы просто запустить 8.3 там же, сделать репликацию и потом убрать старый 8.1. И если так можно, то во нагрузка на этом сервере, получается, возрастет в 2 раза? На одном сервере можно запускать сколько угодно postgres'ов разных версий. Только не забудьте, что вам нужно скомпилять postgres 8.3 в отдельную директорию и стартовать его с правильными путями в PATH. Ну и pgport с pgdata свои прописать. По поводу нагрузки.... Затрудняюсь сказать во сколько раз возрастет нагрузка. Слишком много неизвестных :) Будет большой пик во время инициализации новой ноды слонов , т.е. фактически перегон всей вашей старой базы через команду COPY. Вы можете на это время отключить fsync в 8.3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2008, 11:02 |
|
||
|
Переезд 8.1 -> 8.3 и смена кодировки latin1 -> unicode
|
|||
|---|---|---|---|
|
#18+
Вот только насчет SLONY на одном сервере я не уверен. Теоретически должно работать, но я лично не проверял... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2008, 11:11 |
|
||
|
Переезд 8.1 -> 8.3 и смена кодировки latin1 -> unicode
|
|||
|---|---|---|---|
|
#18+
По-горячему лучше не делать - особенно на рабочем ресурсе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2008, 18:14 |
|
||
|
|

start [/forum/topic.php?fid=53&fpage=271&tid=2004395]: |
0ms |
get settings: |
11ms |
get forum list: |
20ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
53ms |
get topic data: |
14ms |
get forum data: |
4ms |
get page messages: |
61ms |
get tp. blocked users: |
2ms |
| others: | 252ms |
| total: | 425ms |

| 0 / 0 |
