Название документа Работа с БД. v 34 Место хранения оригинала ООО «Кристалл Сервис» Путь к электронной версии документа www.set10help.crystals.ru SetRetail РАБОТА С БД © 2012. ООО «Кристалл-Сервис». Все права защищены. Всеми правами на использование документа «Руководство кассового администратора» обладает ООО «Кристалл Сервис». Оглавление 1. Бэкап и восстановление сервера..............................................................................................................3 Бэкап сервера ............................................................................................................................................................... 3 Восстановление сервера ............................................................................................................................................. 7 2. Бэкап и восстановление кассы. .............................................................................................................. 11 Бэкап кассы................................................................................................................................................................. 11 Восстановление БД кассы используя Pgadmin III .................................................................................................... 14 Восстановление начального состояния БД кассы ................................................................................................... 18 2 Бэкап и восстановление сервера БЭКАП СЕРВЕРА 1. Остановить службу Setv10ApplicationServer. 2. В «Диспетчере задач» во вкладке «Процессы» отсортировать по загрузке ЦП. И проверить есть ли процесс java.exe, который занимает наибольшее пространство в памяти ЦП. Если процесс присутствует, его необходимо завершить. 3 3. На рабочем столе или через кнопку «Пуск» запустить программу администрирования pgAdminIII. 4. Развернуть сервер PostgreSQL 8.4. (localhost:5432) Базы данных сервера - set – настройки сервера, отчеты и.т.п. - set_operday – данные по операционному дню. - postgres и jboss4 – служебные БД 4 5. Для бэкапирования определенной базы данных, необходимо вызвать контекстное меню правой кнопкой мыши на базе данных и в выбрать пункт «Резервная копия». 5 6. В окне «Backup База <имя архивируемой БД>» нажать кнопку […] 7. Выбрать каталог для создания файла архива БД и задать имя аналогичное имя архивируемой БД и нажмите кнопку «Save». 8. После того как архивация будет завершена в окне появятся строке с сообщениями о дампе БД, рекомендуется просмотреть окно на наличие ошибок при архивировании. Когда процесс вернул код выхода 0» можно нажать «Завершено» 6 ВОССТАНОВЛЕНИЕ СЕРВЕРА 1. Остановить службу Setv10ApplicationServer. 2. Нажмите на необходимой базе (в примере «set») правой кнопкой мыши и выберите пункт «Удалить». 2. Подтвердите удаление. 7 3. Кликните правой кнопкой мыши по названию сервера или по секции Базы и выберите пункт «Новая база данных». 4. Введите имя базы данных для восстановления, выберете кодировку UTF8 и нажмите кнопку «ОК». 8 5. После того, как новая БД создана, нажимаем по ней правой кнопкой мыши и выбираем пункт «восстановить». 9 6. Нажмите кнопку […], выберите файл с бэкапом БД и нажмите кнопку «ОК». 7. После завершения бэкапа БД нажмите кнопку «Отменить». Аналогично можно восстановить другие БД ( set, set_operday и другие). 10 Бэкап и восстановление кассы. БЭКАП КАССЫ 1. На сервере запустить программу администрирования pgAdmin III. 2. Необходимо подключиться к базе данных на ККМ. Для этого в меню «Файл» выберите пункт «Добавить сервер». 11 3. Введите: - имя (сервера кассы) - хост (ip ККМ) - порт (5432) - пользователь: postgres - пароль: postgres Нажмите «ОК». 4. После этого станут доступны базы данных ККМ: - cards – карты - cash – параметры кассы - catalog – товары - discount – скидки - operdaymessanger – сообщеия операционного дня - user – пользователи ККМ Для полноценной работы ККМ обязательно наличие этих 6 баз данных в кодировке UTF8. 5. Кликните правой кнопкой мыши по нужной БД (cards) и выберите пункт «Резервная копия». 12 6. В окне «Backup База» нажмите кнопку […] для выбора места сохранения файла бэкапа и введите его имя в соответствии с именем БД. 7. После завершения процесса бэкапа нажмите кнопку «Отменить». 8. В результате процесса создания резервной копии БД ККМ получиться 6 файлов с базами данных: 13 БД «postgres» является служебной БД сервиса PostgreSQL, необходимости делать ее бэкап нет. ВОССТАНОВЛЕНИЕ БД КАССЫ ИСПОЛЬЗУЯ PGADMIN III Для восстановления БД кассы необходимо остановить работу кассовой программы 1. Подключаемся к кассе через ssh (например, программой Putty). Login: tc Pass: 324012. 2.Останавливаем работу кассового модуля. В командной строке выполняем: Sudo killall java 3.Проверяем остановку процесса Java Ps ax|grep java - Если в результате выполнения отображается 1 строка Например: 9042 tc grep java То команда выполнилась успешно и можно переходить к пункту 5 - Если в результате выполнения команды отображается 2 строки Например: 9308 tc java -Xmx256M ru.crystals.pos.loader.Loader 9328 tc grep java То команда выполнилась неуспешно и необходимо выполнить пункт 4 4. Вводим команду запрещающую перезапуск Java: echo dontrestart > storage/crystal-cash/logs/cashstate и снова выполняем пункт 2 и 3. 14 5.На рабочем столе или через кнопку «Пуск» запустить программу администрирования pgAdminIII. 15 6.Удаляем БД данные в которых хотим восстановить (cards, cash, catalog и др.) 7. Кликните правой кнопкой мыши по названию сервера или по секции Базы и выберите пункт «Новая база данных». 16 8. Введите выберете имя базы данных для восстановления, кодировку UTF8 и нажмите кнопку «ОК». 9. После того, как новая БД создана, нажимаем по ней правой кнопкой мыши и выбираем пункт «восстановить». 10. Нажмите кнопку […], выберите файл с бэкапом БД и нажмите кнопку «ОК». 17 11. После завершения бэкапа БД нажмите кнопку «Отменить». ВОССТАНОВЛЕНИЕ НАЧАЛЬНОГО СОСТОЯНИЯ БД КАССЫ Для восстановления начального состояния БД на кассе можно воспользоваться скриптом restore.sh. Необходимо остановить работу кассовой программы: 1. Подключаемся к кассе через ssh (например, программой Putty). Login: tc Pass: 324012. 2.Останавливаем работу кассового модуля. В командной строке выполняем : Sudo killall java 3.Проверяем остановку процесса Java Ps ax|grep java - Если в результате выполнения отображается 1 строка Например: 9042 tc grep java То команда выполнилась успешно и можно переходить к пункту 5 - Если в результате выполнения команды отображается 2 строки Например: 9308 tc java -Xmx256M ru.crystals.pos.loader.Loader 9328 tc grep java То команда выполнилась неуспешно и необходимо выполнить пункт 4 4. Вводим команду запрещающую перезапуск Java: echo dontrestart > storage/crystal-cash/logs/cashstate и снова выполняем пункт 2 и 3. 18 5.Запустить программу администрирования pgAdminIII. 3.Удаляем БД данные в которых хотим очистить (cards, cash и др.) 19 4. Подключаемся к кассе и в командной строке вводим команды: - cd storage/crystal-cash/restore/db - sh restore.sh 5. Перезагружаем кассу командой: - Sudo reboot Примечание С помощью скрипта restore.sh можно восстановить и пользовательский бэкап. Для этого заходим на кассу \\ip адрес кассы\storage\crystal-cash\restore\db В этой папке хранятся начальные образы баз данных. Для того чтобы восстановить нужную БД нужно заменить стандартный бэкап на актуальный и выполнить команду sh restore.sh аналогично примеру приведенному выше. 20 или использую консоль: 1. Для восстановления бэкапа выполнить команду: pg_restore -U postgres -d catalog -c /home/tc/storage/crystal-cash/res tore/db/catalogBkp.backup 2. Если при выполнении скрипта не было ошибок, то необходимо запустить кассовый модуль startx & или перезагрузить кассу полностью командой sudo reboot 21