SymmetricDS активно-активная PostgreSQL конфигурация - PullRequest
0 голосов
/ 26 апреля 2020

SymmetricDS active-active PostgreSQL конфигурация

Я пытаюсь настроить active-active postgreSql базы данных, используя SymmetricDS.

На исходном мастере я использовал это / engine / postgresql .poperties:

sync.url=http\://10.110.88.25\:31415/sync/sales  
group.id=primary  
db.init.sql=  
registration.url=  
db.driver=org.postgresql.Driver  
db.user=rep  
db.password=foo  
db.url=jdbc\:postgresql\://10.110.88.25:5433/sales?protocolVersion\=3&stringtype  \=unspecified&socketTimeout\=300&tcpKeepAlive\=true  
engine.name=sales  
external.id=1  
db.validation.query=select 1  
cluster.lock.enabled=false

Я запустил его с помощью:

./sym_service start  

и заполнил таблицы sym_x. В симметрии c .log я мог видеть, что БД подключена и триггеры были созданы на моих двух дублирующих таблицах.
На другом сервере я создал этот файл /engines/postgresql.poperties:

sync.url=http\://10.110.89.86\:31415/sync/sales2   
group.id=primary  
db.init.sql=  
registration.url= http\://10.110.88.25\:31415/sync/sales  
db.driver=org.postgresql.Driver  
db.user=rep  
db.password=foo  
db.url=jdbc\:postgresql\://10.110.89.86:5433/sales2?protocolVersion\=3&stringtype  \=unspecified&socketTimeout\=300&tcpKeepAlive\=true  
engine.name=sales2  
external.id=sales2  
db.validation.query=select 1  
cluster.lock.enabled=false  

В файле журнала я вижу это:

INFO [sales2] [AbstractSymmetricEngine] [symmetric-engine-startup-1] SymmetricDS Node STARTED:  
         nodeId=sales2  
         groupId=primary  
         type=server  
         subType=null  
         name=sales2  
         softwareVersion=3.11.8  
         databaseName=PostgreSQL  
         databaseVersion=11.7  
         driverName=PostgreSQL JDBC Driver  
         driverVersion=42.2.8  
         uptime=0 sec.  
2020-04-26 17:19:46,150 INFO [sales2] [RouterJob] [sales2-job-1] Did not run the 'Routing' job because the engine is not reg$   
2020-04-26 17:19:46,187 INFO [sales2] [PushJob] [sales2-job-2] Did not run the 'Push' job because the engine is not register$  
2020-04-26 17:19:46,208 INFO [sales2] [RegistrationService] [sales2-job-3] This node is unregistered.  It will attempt to re$  
2020-04-26 17:19:46,217 INFO [sales2] [MonitorJob] [sales2-job-6] Did not run the 'Monitor' job because the engine is not re$  
2020-04-26 17:19:46,218 INFO [sales2] [InitialLoadJob] [sales2-job-5] Did not run the 'Initial Load Queue' job because the e$  
2020-04-26 17:19:46,245 INFO [sales2] [DataLoaderService] [sales2-job-3] Using registration URL of http://10.110.88.25:31415$  
2020-04-26 17:19:46,250 INFO [sales2] [InitialLoadExtractorJob] [sales2-job-7] Did not run the 'Initial Load Extract' job be$  
2020-04-26 17:19:46,303 WARN [sales2] [RegistrationService] [sales2-job-3] Waiting for registration to be accepted by the se$  

Я понял, что я должен использовать symadmin на исходном сервере следующим образом:

./symadmin open-registration --engine sales2 primary sales2  

Но в журнале на исходном сервере я вижу это:

2020-04-26 17:36:58,585 WARN [sales] [RegistrationUriHandler] [qtp1752182275-891] primary:sales2:? was not allowed to register  

Я что-то не так делаю? что мне не хватает?

1 Ответ

0 голосов
/ 26 апреля 2020

Похоже, engine.name вашего исходного узла sales. Я думаю, что ваша команда должна быть:

./symadmin open-registration --engine sales primary sales2  
...