Инструменты пользователя

Инструменты сайта


uni:uni

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
Следующая версия Следующая версия справа и слева
uni:uni [18.07.2019 00:06]
buh
uni:uni [22.09.2019 22:28]
buh [Обслуживание базы данных.]
Строка 1: Строка 1:
 ====== Работа с Юнисервисом. ====== ====== Работа с Юнисервисом. ======
 +===== Обслуживание базы данных. =====
 +^Номер регламента^Вид обслуживания^Периодичность^Необходимые программы^
 +|1|Копирование базы данных|Ежедневно|см. Batch-файл резервного копирования|
 +|2|Удаление событий старше заданного периода|Ежемесячно|[[http://​www.artonit.ru/​index.php?​option=com_content&​view=article&​id=61:​dbclean_for_service_db&​catid=57:​artonit-hard-soft&​Itemid=76|DBClean]]|
 +|3|Удаление неактивных пользователей|Ежеквартально|С помощью программы IBExpert запросом <​code>​delete from people p where p."​ACTIVE"​=0</​code>​|
 +|4|Бэкап-Ресторе базы данных|Ежеквартально|[[http://​www.artonit.ru/​index.php?​option=com_content&​view=article&​id=61:​dbclean_for_service_db&​catid=57:​artonit-hard-soft&​Itemid=76|DBClean]]|
 +|5|Автоматическая чистка базы данных|Ежедневно|{{ :​uni:​db_skud_service.zip |}}\\ Открыть архив в любую папку.\\ Проверить пути к исполняемым файлам.\\ Настроить Назначенные задания на запуск файла db_SKUD_service.bat в указанное время (лучше ночью, т.к. процесс очистки может занимать длительное время)|
 +
 ===== Перечень объектов ===== ===== Перечень объектов =====
  --- //​[[admin@artonit.ru|Бухаров А.В.]] 2019/06/17 08:58//  --- //​[[admin@artonit.ru|Бухаров А.В.]] 2019/06/17 08:58//
 ^№ п/​п^Название^IP адрес^Логин^Пароль^Версия БД^Версия Сити^ ^№ п/​п^Название^IP адрес^Логин^Пароль^Версия БД^Версия Сити^
-|1|Доминион|192.168.222.1|ХХХ|YYY+|1|Доминион|192.168.222.1|ХХХ| | 
-|2|Фьюжн|192.168.230.9| СКД |SKUD-Mich5+|2|Фьюжн|192.168.230.9| СКД | | 
-|3|Восток| 192.168.230.5| Восток|333+|3|Восток| 192.168.230.5| Восток| | 
-|4|Резиденция|192.168.183.200|Артсек| ​Artem2013|+|4|Резиденция|192.168.183.200|Артсек| |
 ==== Комплект сервисных программ ==== ==== Комплект сервисных программ ====
 ^№ п/​п^Сервис,​ программа^ ​ Объект ​ ^^^^^ ^№ п/​п^Сервис,​ программа^ ​ Объект ​ ^^^^^
Строка 14: Строка 22:
 |3|Автоматическое удаление неизвестного идентификатора|Нет\\ ​  --- //​[[admin@artonit.ru|Бухаров А.В.]] 2019/06/21 14:​01//​|Есть| |3|Автоматическое удаление неизвестного идентификатора|Нет\\ ​  --- //​[[admin@artonit.ru|Бухаров А.В.]] 2019/06/21 14:​01//​|Есть|
 |4|{{ :​uni:​city_2019_07_08.zip |Панель управления Артонит Сити}}| |4|{{ :​uni:​city_2019_07_08.zip |Панель управления Артонит Сити}}|
 +|5|AServer|1.2.0.27|1.2.0.27|
  
 ==== Версии БД и их состояние на объектах==== ==== Версии БД и их состояние на объектах====
Строка 43: Строка 52:
  
 COMMIT WORK;</​code>​ COMMIT WORK;</​code>​
 +
 +=== Данные таблицы DEVTYPE ===
 +<​code>​
 +INSERT INTO DEVTYPE (ID_DEVTYPE,​ ID_DB, NAME, STANDALONE) VALUES (1, 1, '​Контроллеры Артонит/​Адемант',​ 1);
 +INSERT INTO DEVTYPE (ID_DEVTYPE,​ ID_DB, NAME, STANDALONE) VALUES (2, 1, '​Контроллеры Артонит (резерв)',​ 1);
 +INSERT INTO DEVTYPE (ID_DEVTYPE,​ ID_DB, NAME, STANDALONE) VALUES (3, 1, 'UHF RFID контроллеры',​ 1);
 +INSERT INTO DEVTYPE (ID_DEVTYPE,​ ID_DB, NAME, STANDALONE) VALUES (4, 1, '​Biomrteical',​ 1);
 +INSERT INTO DEVTYPE (ID_DEVTYPE,​ ID_DB, NAME, STANDALONE) VALUES (5, 1, '​Система распознавания ГРЗ',​ 1);
 +INSERT INTO DEVTYPE (ID_DEVTYPE,​ ID_DB, NAME, STANDALONE) VALUES (6, 1, '​Артонит в режиме он-лайн',​ 0);
 +
 +COMMIT WORK;
 +</​code>​
 +
 == Batch-файл резервного копирования. == == Batch-файл резервного копирования. ==
  
Строка 61: Строка 83:
 База обновлена и готова к проверке и последующему использованию по назначению. База обновлена и готова к проверке и последующему использованию по назначению.
 ===== Удаление событий старше заданного количества дней. ===== ===== Удаление событий старше заданного количества дней. =====
 +Удаление - процесс опасный,​ поэтому я привожу пример select.\\ При необходимости удаления следует select * заменить на delete.
 <​code>​select * from events e <​code>​select * from events e
 where e.datetime>​CURRENT_DATE-2</​code>​ where e.datetime>​CURRENT_DATE-2</​code>​
 +либо
 +<​code>​
 + ​select * from events e where e.datetime >​DATE'​today'​ - 2
 +</​code>​
 +9.08.2019
 +<​code>​ Удаление указанных событий старше 30 дней
 +select * from events e
 +where e.datetime < CURRENT_DATE-30
 +and e.id_eventtype in (0, 49, 54, 55, 58, 53, 46)
 +</​code>​
 +===== Статистика событий =====
 + ​Вывод информации о типах событий и их количество в базе данных.
 +<​code>​ select distinct e.id_eventtype,​ et.name, count(e.id_event) from events e
 +join eventtype et on et.id_eventtype=e.id_eventtype
 +group by e.id_eventtype,​ et.name</​code>​
 +
 ===== График выполненных работ. ===== ===== График выполненных работ. =====
 ^№ п/​п^Дата выполнения работ^Объект^Причина выполнения работ^Что сделано^Результат^ ^№ п/​п^Дата выполнения работ^Объект^Причина выполнения работ^Что сделано^Результат^
 |1|3.07.2019|Чемпион корпус Г|Обноавление БД СКУД до Артонит Сити в рамках договора|Обновление базы данных СКУД в здании офиса до Артонит Сити|Базу обновил,​ Сити поставил. Заказчик решает вопрос о категориях доступа. Следующий этап - заливка в эту базу жильцов из соседнего здания,​ объединение транспортных серверов.| |1|3.07.2019|Чемпион корпус Г|Обноавление БД СКУД до Артонит Сити в рамках договора|Обновление базы данных СКУД в здании офиса до Артонит Сити|Базу обновил,​ Сити поставил. Заказчик решает вопрос о категориях доступа. Следующий этап - заливка в эту базу жильцов из соседнего здания,​ объединение транспортных серверов.|
 |2|8.07.2019|Шуваловский|При попытке просмотра событий Неизвестная карта истекало время ожидания.|При подготовке данных по событию Недействительная карта панель управления пыталась извлечь еще и фотографию пользователей. см.\\ C:​\xampp\htdocs\city\application\classes\Model\Event.php метод event_invalid_list\\ строка $res[$key]['​PHOTO'​]=$this->​getPhoto($value['​ESS1'​]);​\\ Очевидно,​ что попытка вместить в буфер большое количество фотографией (а событий было 740 за сутки) и приводило к исчерпанию памяти. Строка была закомментирована.|Ошибка не повторяется,​ выводится список событий с Неизвестной картой.| |2|8.07.2019|Шуваловский|При попытке просмотра событий Неизвестная карта истекало время ожидания.|При подготовке данных по событию Недействительная карта панель управления пыталась извлечь еще и фотографию пользователей. см.\\ C:​\xampp\htdocs\city\application\classes\Model\Event.php метод event_invalid_list\\ строка $res[$key]['​PHOTO'​]=$this->​getPhoto($value['​ESS1'​]);​\\ Очевидно,​ что попытка вместить в буфер большое количество фотографией (а событий было 740 за сутки) и приводило к исчерпанию памяти. Строка была закомментирована.|Ошибка не повторяется,​ выводится список событий с Неизвестной картой.|
 +|3|18.07.2019|Доминион|Звонок Виктора:​ работает база данных. В логе АСервера видны сообщения о незавершенных транзакциях и ошибке checksum|Бэкап-чистка|База стала работать.|
 +|4|18.07.2019|Чемпион|После обновления прошивок 17.07.2019 нет событий.|Переименова папка Artonit2driver. После обновления прошивок в контроллерах обнулились и счетчики. Удаление папки заставило ТС2 начинать выборку с текущего значения счетчика.|События появились,​ Монитор работает штатно.|
 +|5|16.07.2019|Чемпион|Плановая модернизация|Обновление прошивок в контроллерах|ПРошивки обновлены,​ количество карт в контроллере видно.|
 +|6|30.07.2019|Восток|Завершено обновление прошивок Артонит-СЕ на Артонит М|Работы проводил Копылов Игорь совместно с Артемом и Леонидом (местные инженеры)|
 +|7|30.07.2019|Чемпион|Наблюдалась остановка Монитора:​ события не выводились,​ но после перезапуска Монитор продолжал работать.|причина отказа работы монитора - в ходе работы процедура EVENTS_GETLISTFROMID собирает строку для вывода на экран.\\ при этом используются записи events:note + разного рода комментарии.\\ максимальная длина комментария не может превышать 152 символа.\\ в базе данных же имеются отчества вот такого вида:\\ Михайлович - зам.ген.директора по информационным технологиям"​Юнисервиса",​\\ после добавления к ним названия организации,​ номера карты, срока действия - длина превышает 152 символа,​ и СУБД выдает ошибку вида Переполнение строки.\\ при обновлении монитора он начинает выборку с последних записей.\\ и работает до очередной такой длинной строки.|С помощью Excel проведен работ отчеств. Должности вынесены в нужную колонку. Надо понаблюдать за работой монитор. Надо бы подумать и над процедурой,​ не допускать переполнение строки с комментариями.|
 +|8|9.08.2019|Резиденция|При выполнении команды Загрузить карты удаление не выполняется. Вместо ожидаемых удаление -запись в лог-файле имеются только записи карт.|Асервер версии 1.2.0.24 заменен на 1.2.0.27. Выполнен анализ нарушений за июль-август 2019 г.\\ Выявлено,​ что\\ ​   * -  В-25(3)\\ ​   * -  Султанов Ахмад\\ ​   * -  Черепов Андрей Викторович\\ ​   * -  Черепов Кирилл Андреевич\\ ​   * -   ​Чеснокова Ирина\\ могут ходить там, где им нет разрешения.|После замены АСервера карты удаляются правильно. Информация с ФИО для нарушителей режима передана Вадиму.|
 +|-|20.08.2019|Шуваловский|При просмотре лог-файла АСервера видно, что имеются ошибки вида <​code>​Err ServerControl::​InsertEvent : "​[Gemini InterBase ODBC Driver][INTERBASE]arithmetic exception, numeric overflow, or string truncation"</​code>​\\ Анализ показал,​ что причина - в очень длинной фразе. Причина длинной фразы - длинное название точки прохода. Полная фраза не помещается в отведенное поле note varchar(100),​ что приводит к ошибке базы данных|В процедуре DEVICEEVENTS_INSERT закомментированы строки формирования сообщения NOTE: <​code>​VALUES (:ID_DB, :​ID_EVENTTYPE,​ :"​TIME",​ :ID_DEV, :ID_PLAN, :IDSOURCE, :​IDSERVERTS,​
 +        '​Device event='​||:​note );
 +        /*
 +        ||', device="'​||:​door_name
 +        ||'",​ server="'​||:​server_name
 +        ||'",​ '​||:​fullname );
 +        */</​code>​. Текст сообщения стал короче,​ и ошибка в течении 3-х часов не появлялось.|Сообщений об ошибке более нет.|
 +|-|20.09.2019|Шуваловский|Замедление загрузки карт в контроллеры Адемант.\\ Долгая работа веб-панели|Произведено удаление событий старше 30 суток (для событий с дверями) и удалены все события старше 180 суток| Размер базы данных Shieldpro_rest.gdb сократился с 4,3 Гб до 1,3 Гб.
/home/cardsoft/artonit.ru/docs/wiki/data/pages/uni/uni.txt · Последние изменения: 02.10.2020 08:50 — buh