|   |   | 
| 
 | вопросы по PostgreSQL | ☑ | ||
|---|---|---|---|---|
| 0
    
        novichok79 17.11.16✎ 11:26 | 
        Здравствуйте, уважаемые специалисты 1С!
 В данный момент перевожу небольшое предприятие с IM DB2, ибо купили новый сервер. На Microsoft SQL Server денег нет, ставлю им PostgreSQL. Ранее не особо работал с ней. Обычно в батнике делаю vacuum и reindex, затем резервирование через pg_dump. А по выходным ТиИ средствами 1С. Задался вопросом - есть ли встроенный шедулер в PostgreSQL? Еще один вопрос - в какой последовательности и какой регламент для баз вы обычно делаете - как часто ТиИ и резервные копии? Заранее благодарю за ответы. | |||
| 1
    
        ice777 17.11.16✎ 11:44 | 
        (0) батником бэкап делаю.     | |||
| 2
    
        piter3 17.11.16✎ 11:45 | ||||
| 3
    
        novichok79 17.11.16✎ 11:52 | 
        (2) спасибо, подобный батник у меня есть.
 вопрос в порядке выполняемых регл. заданий. | |||
| 4
    
        piter3 17.11.16✎ 11:57 | 
        (3)https://wiki.postgresql.org/wiki/Automated_Backup_on_Windows
 если коротко то виневый шедулер пользуют.на никсовой не помню как | |||
| 5
    
        Вафель 17.11.16✎ 11:58 | 
        на никсах крон     | |||
| 6
    
        novichok79 17.11.16✎ 12:12 | 
        (4) спс, оказывается есть pgAgent, запускает либо sql скрипты, либо те же батники. однако, иногда страдает утечкой памяти.     | |||
| 7
    
        novichok79 18.11.16✎ 08:45 | 
        апну свою же ветку. пока балуюсь на собственном домашнем серваке. там у меня стоит 64-битный PostgreSQL Pro 9.4.10 с накаченными патчами от 1С.
 ткните носом пожалуйста, что я делаю не так. а именно backup средствами PostgreSQL: CLS ECHO OFF CHCP 1251 SET PGBIN=C:\Program Files\PostgresPro 1C\9.4\bin\ SET PGHOST=localhost SET PGPORT=5432 SET PGUSER=postgres SET PGPASSWORD=copacabana SET PGDATABASE=%1 SET STAGINGDIRECTORY=C:\Temp\ SET BACKUPDIRECTORY=E:\Backup1C\ SET DATETIME=%DATE:~6,4%-%DATE:~3,2%-%DATE:~0,2% %TIME:~0,2%-%TIME:~3,2%-%TIME:~6,2% SET DUMPFILE=%PGDATABASE%_%DATETIME%.backup SET LOGFILE=%PGDATABASE%_%DATETIME%.log IF '%PGDATABASE%'=='' (ECHO The database name is not specified & GOTO End) IF NOT EXIST %STAGINGDIRECTORY% MD %STAGINGDIRECTORY% IF NOT EXIST %BACKUPDIRECTORY% MD %BACKUPDIRECTORY% CD /d %STAGINGDIRECTORY% SET DUMPPATH="%STAGINGDIRECTORY%%DUMPFILE%" SET LOGPATH="%STAGINGDIRECTORY%%LOGFILE%" SET FINALDUMPPATH="%BACKUPDIRECTORY%%DUMPFILE%" SET FINALLOGPATH="%BACKUPDIRECTORY%%LOGFILE%" CALL "%PGBIN%\pg_dump.exe" --blobs --if-exists --clean --create --format=custom --verbose --compress=9 --file=%DUMPPATH% 2>%LOGPATH% IF NOT %ERRORLEVEL%==0 GOTO Error GOTO Successfull :Error DEL %DUMPPATH% ECHO %DATETIME%: Errors when creating a database backup %DUMPFILE%. See the report %LOGFILE%. >> %LOGPATH% GOTO End :Successfull ECHO %DATETIME%: The backup %DUMPFILE% has been successfully created >> %LOGPATH% ECHO F| XCOPY %DUMPPATH% %FINALDUMPPATH% /I /H /R /Y ECHO F| XCOPY %LOGPATH% %FINALLOGPATH% /I /H /R /Y DEL %DUMPPATH% DEL %LOGPATH% GOTO End :End | |||
| 8
    
        novichok79 18.11.16✎ 08:50 | 
        Далее хочу восстановить это дело в новую базу, которую предварительно создал в PgAdmin III
 Кодировка: UTF8 Шаблон: template0 Табличное пространство: pg_default Сопоставление: Russian Russia. 1251 Тип символа: Russian Russia. 1251 Макс. число подключений -1 Почему-то база 1С тоже видится как template, это настораживает. При попытке восстановления из дампа, выдается куча ошибок. | |||
| 9
    
        novichok79 18.11.16✎ 09:06 | 
        Выдаются ошибки следующего типа
 C:\Program Files (x86)\pgAdmin III\1.22\pg_restore.exe --host localhost --port 5432 --username "postgres" --dbname "test" --no-password --section pre-data --section data --section post-data --clean --verbose "E:\Backup1C\ut_11_2016-11-18 0-07-08.backup" pg_restore: connecting to database for restore pg_restore: [archiver (db)] Error while INITIALIZING: pg_restore: [archiver (db)] could not execute query: РћРЁР?БКА: нераспознанный параметр конфигурации: "row_security" Command was: SET row_security = off; pg_restore: dropping INDEX byusosname pg_restore: [archiver (db)] Error while PROCESSING TOC: pg_restore: [archiver (db)] Error from TOC entry 23861; 1259 46184 INDEX byusosname postgres pg_restore: [archiver (db)] could not execute query: РћРЁР?БКА: индекс "byusosname" РЅРµ существует Command was: DROP INDEX public.byusosname; pg_restore: dropping INDEX byusname pg_restore: [archiver (db)] Error from TOC entry 23860; 1259 46181 INDEX byusname postgres pg_restore: [archiver (db)] could not execute query: РћРЁР?БКА: индекс "byusname" РЅРµ существует Command was: DROP INDEX public.byusname; pg_restore: dropping INDEX byusdescr pg_restore: [archiver (db)] Error from TOC entry 23859; 1259 46183 INDEX byusdescr postgres pg_restore: [archiver (db)] could not execute query: РћРЁР?БКА: индекс "byusdescr" РЅРµ существует Command was: DROP INDEX public.byusdescr; | |||
| 10
    
        novichok79 18.11.16✎ 09:06 | 
        Что я делаю не так?     | |||
| 11
    
        novichok79 18.11.16✎ 09:11 | 
        Может быть что-то с кодировкой, но я кроме 
 >> Сопоставление: Russian Russia. 1251 >> Тип символа: Russian Russia. 1251 везде (при установке PostgrePro и в 1С) выставил UTF-8 | |||
| 12
    
        novichok79 18.11.16✎ 09:14 | 
        Да и ровно такие же и в том же количестве ошибки вываливались на PostgreSQL с сайта releases.1c.ru     | |||
| 13
    
        Fragster гуру 18.11.16✎ 09:41 | 
        базы нужно создавать средствами 1с, а потом туда заливать бэкап     | |||
| 14
    
        Fragster гуру 18.11.16✎ 09:41 | 
        ошибка, может быть будет исправлена     | |||
| 15
    
        novichok79 18.11.16✎ 09:42 | 
        Думаю, что через pg_restore надо восстанавливать, нафиг PgAdmin. Напишу батник, попробую.     | |||
| 16
    
        novichok79 18.11.16✎ 09:43 | 
        (14) Не, ну можно еще в dt выгружать, но фирма 1С так не рекомендует делать, насколько я знаю из ИТС.     | |||
| 17
    
        Fragster гуру 18.11.16✎ 09:50 | 
        Дамп
 pg_dump -Fc -U postgres base > base.dump Восстановление pg_restore -U postgres -d newbase base.dump | |||
| 18
    
        novichok79 18.11.16✎ 09:54 | 
        (17) спасибо. pgAdmin выполняет ту же команду по сути, а результат отличный от того что выполняется в cmd.exe. странно.     | |||
| 19
    
        novichok79 18.11.16✎ 12:27 | 
        с бэкапами разобрался. ставлю на сервер предприятия PostgresPro и служба запускается. но PgAdmin не видит ее и 1С кстати тоже. запуск идет от имени "Сетевая служба"     | |||
| 20
    
        Вафель 18.11.16✎ 12:28 | 
        порты?     | |||
| 21
    
        novichok79 18.11.16✎ 12:30 | 
        5432 открыт
 C:\Users\Администратор>netstat -a Активные подключения Имя Локальный адрес Внешний адрес Состояние TCP 0.0.0.0:135 Fileserver:0 LISTENING TCP 0.0.0.0:445 Fileserver:0 LISTENING TCP 0.0.0.0:1540 Fileserver:0 LISTENING TCP 0.0.0.0:1541 Fileserver:0 LISTENING TCP 0.0.0.0:1560 Fileserver:0 LISTENING TCP 0.0.0.0:1688 Fileserver:0 LISTENING TCP 0.0.0.0:3389 Fileserver:0 LISTENING TCP 0.0.0.0:5357 Fileserver:0 LISTENING TCP 0.0.0.0:5432 Fileserver:0 LISTENING | |||
| 22
    
        novichok79 18.11.16✎ 12:42 | 
        при попытке запустить вручную
 pg_ctl -D "C:\Program Files\PostgreSQL\8.3\Data" -l logfile start пишет что служба уже запущена, но попробуем запустить ее, потом server started а потом отказано в доступе. это я такой упоротый, или у всех так? | |||
| 23
    
        Salimbek 18.11.16✎ 12:54 | 
        (33) Права не только по портам, но и по разрешениям у юзеров. Смотреть конфиг надо.     | |||
| 24
    
        Salimbek 18.11.16✎ 12:57 | 
        Например тут почитать: http://pgcookbook.ru/article/no_pg_hba_conf_entry_for_host.html     | |||
| 25
    
        Salimbek 18.11.16✎ 13:02 | ||||
| 26
    
        novichok79 18.11.16✎ 13:51 | 
        (24), (25) спасибо, добрый человек.     | |||
| 27
    
        novichok79 18.11.16✎ 14:21 | 
        в общем, странное дело - перезагрузился, pgAdmin нашел базы. загружаю базы из dt     | |||
| 28
    
        novichok79 18.11.16✎ 15:44 | 
        люди добрые, прошу ткнуть носом в очередной раз. при попытке подключиться с внешнего компа пишет:
 server_addr=tcp://fileserver:1541 descr=192.168.1.176:1541:10060(0x0000274C): Попытка установить соединение была безуспешной, т.к. от другого компьютера за требуемое время не получен нужный отклик, или было разорвано уже установленное соединение из-за неверного отклика уже подключенного компьютера.; line=1043 file=src\DataExchangeTcpClientlmpl.cpp Выполняется ожидание возможности запуска. ф При появлении возможности, запуск будет выполнен автоматически Нажмите "Выполнить запуск" для немедленной попытки запуска. Нажмите "Отмена" для отказа от запуска. в файлах лога postgresql нету записи о том что у пользователя нет доступа согласно файлу pg_hba.conf. служба сервера 1С запущена на стандартном порте 1541, порт открыт согласно netstat, в брэндмауэре не блокируется. | |||
| 29
    
        Demiurg 18.11.16✎ 15:46 | 
        это он 192.168.1.176 сервер 1С не может найти вроде как     | |||
| 30
    
        Demiurg 18.11.16✎ 15:47 | 
        внешний комп в той же сетке то?     | |||
| 31
    
        novichok79 18.11.16✎ 15:49 | 
        (30) да, это сервер, который стоит через комнату от меня, он в той же сетке. мой локальный комп видно с сервера и наоборот.     | |||
| 32
    
        Fragster гуру 18.11.16✎ 15:55 | 
        настройте днс ннормально, чтобы со всех компов по имени можно было обратится на любой комп (через nslookup, а не через "служба доступа файлов и принтеров мелкософт")     | |||
| 33
    
        novichok79 18.11.16✎ 16:04 | 
        (32) а в этом ли дело, если указать на старом сервере базу, и с локального компьютера туда заходит?
 в pg_hba.conf вход с паролем разрешен во все базы с любого компьютера | |||
| 34
    
        Fragster гуру 18.11.16✎ 16:05 | 
        (33) в этом     | |||
| 35
    
        novichok79 18.11.16✎ 19:58 | 
        (34) все оказалось проще - админ не открыл порты в брэндмауэре. чего-то я затупил, потом проверил через telnet fileserver 1541 и 1560. они закрытые были. в общем, сейчас все взлетело. спасибо за помощь.     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |