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

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


doc:2003:mgul.200300.001.3201

Различия

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

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

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
doc:2003:mgul.200300.001.3201 [2024/08/09 00:07]
daftwi
doc:2003:mgul.200300.001.3201 [2024/08/11 01:07] (текущий)
daftwi
Строка 39: Строка 39:
 | Тип осреднения ​                     | average ​ | varchar (50)  | Тип осреднения:​\\ aver_hour\\ maximum_in_hour\\ minimum_in_hour\\ aver_15min\\ minimum_in_15min\\ maximum_in_15min ​ | Названия функций:​\\ insertavghour\\ insertmaxhour\\ insertminhour\\ function_15_min ​ | | Тип осреднения ​                     | average ​ | varchar (50)  | Тип осреднения:​\\ aver_hour\\ maximum_in_hour\\ minimum_in_hour\\ aver_15min\\ minimum_in_15min\\ maximum_in_15min ​ | Названия функций:​\\ insertavghour\\ insertmaxhour\\ insertminhour\\ function_15_min ​ |
 | Количество осредненняемых значений ​ | num      | json          | Количество осредненняемых значений ​                                                                                 |                                                                                      | | Количество осредненняемых значений ​ | num      | json          | Количество осредненняемых значений ​                                                                                 |                                                                                      |
-| Сумма неосредненных значений ​       | sum      | json          | Сумма неосредненных значений ​                                                                                       |                                                                                      |+| Сумма неосредненных значений ​       | sum      | json          | Сумма неосредненных значений ​                                                                                       |     
 + 
 +====== PostgreSQL ====== 
 + 
 +===== Установка и запуск PostgreSQL ===== 
 +<​code>​sudo apt update 
 +sudo apt install postgresql postgresql-contrib 
 +sudo systemctl start postgresql.service</​code>​ 
 +===== Создание роли ===== 
 +Для создания баз данных используются роли в СУБД PostgreSQL. При создании роли автоматически создается БД с аналогичным названием. Для использования роли необходимо создать пользователя,​ к которому будет применена роль. Имя пользователя и роли должны совпадать. 
 +Создание пользователя для БД логов:​ 
 +<​code>​sudo adduser averobo_logs</​code>​ 
 +При создании пользователя необходимо не забывать о предоставлении,​ если необходимо sudo/root прав. Их необходимо предоставлять отдельно. 
 +Создание роли для БД логов:​ 
 +<​code>​sudo -u postgres createuser averobo_logs</​code>​ 
 +Создание пользователя для основной БД: 
 +<​code>​sudo adduser averobo</​code>​ 
 +Создание роли для основной БД: 
 +<​code>​sudo -u postgres createuser averobo</​code>​ 
 +  * После предоставления роли можно зайти в созданного пользователя через команду:​ 
 +<​code>​sudo -i su averobo_logs</​code>​ 
 +Для входа в PostgreSQL:​ 
 +<​code>​psql</​code>​ 
 +===== Создание таблицы для БД логов ===== 
 +Создание таблиц происходит непосредственно в PostgreSQL. Для этого необходимо авторизоваться через пользователя,​ к базе данных которого нужно произвести подключение. Данный шаг показан в предыдущем разделе. 
 +  * Создание таблицы для логирования:​ 
 +<​code>​create table logs ( 
 +             date timestamp 
 +             , level character varying(25) 
 +             , function character varying(25) 
 +             , message character varying(10000) 
 +);</​code>​ 
 +===== Создание таблицы для основной БД ===== 
 +  * Создание таблицы для неосредненных значений:​ 
 +<​code>​create table half_path ( 
 +             date timestamp without time zone 
 +             , name character varying(50) 
 +             , average character varying(50) 
 +             , sum json 
 +             , num json  
 +);</​code>​ 
 +  * Создание таблицы для хранения данных формата дата-время:​ 
 +<​code>​create table half_path ( 
 +             date timestamp without time zone 
 +             , name character varying(50) 
 +             , average character varying(50) 
 +             , json_file json 
 +);</​code>​ 
 +  * Создание таблицы для хранения данных формата дата: 
 +<​code>​create table half_path ( 
 +             date date 
 +             , name character varying(50) 
 +             , average character varying(50) 
 +             , json_file json 
 +);</​code>​ 
 + 
 +===== Проверки после создания таблиц ===== 
 + 
 +Проверка наличия таблицы:​ 
 +<​code>​select * from logs;</​code>​ 
 +Просмотр всех существующих таблиц в БД: 
 +<​code>​\dt</​code>​ 
 +Просмотр полей и деталей о колонках в конкретной таблице:​ 
 +<​code>​\d logs</​code>​ 
 + 
 +===== Если база данных не создалась автоматически ===== 
 +  * Создание БД через пользователя PostgreSQL по умолчанию 
 +<​code>​sudo -i su postgres</​code>​ 
 +Команда для создания БД: 
 +<​code>​createdb averobo_logs</​code>​ 
 +  * Создание БД через bash-команду 
 +<​code>​sudo -u postgres createdb averobo_logs</​code>​ 
 + 
 + 
 + 
 + 
 +====== CRONTAB ====== 
 +Для установки расписания выполнения программ используется **crontab**. ​ Чтобы запустить текстовый редактор и добавить необходимые записи в файл конфигурации cron необходимо выполнить следующую команду:​ 
 +<​code>​crontab -e</​code>​ 
 +Запись состоит из семи полей:​ 
 +минуты ​  ​часы ​  ​день ​ месяц ​  ​день_недели ​ выполняющая_программа ​  ​команда 
 +Следовательно,​ для запуска скрипта для заполнения пятнадцатиминутных значений необходимо прописать время в формате */15 * * * *, путь до расположения интерпретатора Python3 и путь до выполняемого файла. 
 +<​code>​*/​15 * * * * /​usr/​bin/​python3 /​home/​alenanaz/​test_myfunctions.py</​code>​ 
 +Аналогично будут составлены записи для заполнения почасовых и ежедневных значений. 
 +<​code>​10 * * * * /​usr/​bin/​python3 /​home/​alenanaz/​test_myfunctions_hour.py</​code>​ 
 +<​code>​15 0 * * * /​usr/​bin/​python3 /​home/​alenanaz/​test_myfunctions_day.py</​code>​ 
 +                                                                                 
doc/2003/mgul.200300.001.3201.1723151276.txt.gz · Последние изменения: 2024/08/09 00:07 — daftwi