Присоединение и отсоединение БД PostgreSQL
Присоединение базы данных
|
База данных и файловые архивы могут быть вынесены на другой компьютер или хранилище отдельно от Pilot-Server. В этом случае нужно настроить сетевое окружение таким образом, чтобы база данных и файловые архивы были в любой момент времени доступны для службы Pilot-Server. |
Чтобы присоединить базу данных, на компьютере, где установлен Pilot-Server, выполните команду --attachpg (-atpg) с параметрами:
$ su pilotuser
$ cd /opt/pilot-server
$ ./Ascon.Pilot.Daemon --attachpg my-database "Host=address:port; Username=pilotuser; Password=password; Include Error Detail=true; Pooling=true; Connection Lifetime=0; Keepalive=3; DataBase=database_pg" "/home/pilotuser/my-database/Index" "/home/pilotuser/my-database/FileArchive/44191f9c-c8a4-4689-b38b-474f2aba4465.pilotfa"
$ exit
Где:
my-database — задайте имя базы данных,
"Host=10.128.4.12:6432; Username=pilotuser; Password=password; Include Error Detail=true; Pooling=true; Connection Lifetime=0;Keepalive=3; DataBase=pilot-bim_ru" — строка присоединения к базе данных PostgreSQL,
address:port — адрес и порт, на котором работает Postrges,
pilotuser и password — имя и пароль пользователя PostgreSQL,
database_pg — имя присоединяемой базы данных PostgreSQL,
"/home/pilotuser/my-database/Index" — полный путь для хранения индексных файлов,
"/home/my-database/FileArchive/44191f9c-c8a4-4689-b38b-474f2aba4465.pilotfa" — полный путь к файловому архиву.
Присоединяемая база данных прописывается в файле settings.xml, располагающемся в папке вместе с Pilot-Server. Например:
<DatabaseParameters Name="my-database" Filename="" State="Launched" Version="20250317" Id="f6ba197a-057f-4dd5-94e9-7fa4905cb737" SessionId="00000000-0000-0000-0000-000000000000" WarmUp="false" IsLaunched="false">
<FileArchiveFolders>
<FileArchiveParameters Folder="/home/my-database/FileArchive" Id="44191f9c-c8a4-4689-b38b-474f2aba4465" IsWritable="true" />
</FileArchiveFolders>
<PgConnectionString ConnectionString="Host=http://10.128.4.12:6432;Username=pilotuser;Password=password;Include Error Detail=True;Pooling=True;Connection Lifetime=0;Keepalive=3;Database=database_pg;" />
<IndexPath>/home/pilotuser/my-database/Index</IndexPath>
<SnapshotPath />
</DatabaseParameters>
Базу данных можно присоединить, указав эти параметры в файле settings.xml и перезапустив Pilot-Server.
Отсоединение базы данных
Чтобы временно отсоединить базу данных от сервера, на компьютере, где установлен Pilot-Server, выполните команду --detach (-de) с именем базы данных в качестве параметра. Идентификатор базы данных в этом случае сохранится, и в следующий раз она будет присоединена с этим же идентификатором. Пример:
$ su pilotuser
$ cd /opt/pilot-server
$ ./Ascon.Pilot.Daemon --detach my-database
$ exit
Чтобы отсоединить базу данных для тиражирования, на компьютере, где установлен Pilot-Server, выполните команду --detach (-de) с именем базы данных и ключом сброса идентификатора в качестве параметров. Идентификатор базы данных в этом случае будет сброшен, и в следующий раз она будет присоединена с новым идентификатором. Пример:
$ su pilotuser
$ cd /opt/pilot-server
$ ./Ascon.Pilot.Daemon --detach my-database true
$ exit
При отсоединении база данных удаляется из файла settings.xml. Отсоединить базу данных можно, если отредактировать файл settings.xml, удалить сведения о базе данных из файла и перезапустить Pilot-Server.
Переименование базы данных
Имя базы данных в списке баз Pilot-Server задаётся при её присоединении. Переименование базы данных реализуется через её отсоединение и последующее присоединение с новым именем.