I have a multiserver installation of ISPconfig. Yesterday, my innodb database on the master server got corrupted and the mariadb server could not be started. I restored the two weeks old database from the backup and now I have a problem with synchronization of the client server. The client server has the mailserver role. Whatever I do on the master server will not transfer to the client server. I tried updating ispconfig on both servers, everything went fine. I can access the database from both servers. I also manually ran /usr/local/ispconfig/server/server.sh in debug mode on both servers and got no errors. The firewall is fine, the manual connection of the client to the master server is functional. I also ran Tools -> Resync. But I have been still seeing the message "The following changes are not yet populated to all servers" for two days in the ISPConfig environment. Where could be the error?
You must set the 'updated' column in the 'server' table of the dbispconfig MySQL database on both servers for the mail node record in that table to the datalog_id value where it shall start processing the new datalog entries.
On the master server is value of the "updated" entry 5402 and on the slave (mail) server is 8127. Pending actions are 1951. Should I set the value to 3451 on both servers?
This would probably work, but it might be that some tasks get reprocessed. The safest way would be to look into the SQL backup file that you used for the restore to see which max. datalog_id is in there and use that. Just for the understanding, what the mail node is doing is this: he 'asks' the master for all config transactions from sys_datalog where datalog_id is higher than what is stored in the 'updated' column. Due to the restore of an older database, the highest datalog_id is currently way lower than the value in the updated column and that's why the slave 'thinks' that he is up to date and does not receive changes.
Yes, now i understand how does it work. I'll try decrease the value to 5402 on the slave server and make Resync in the ISPConfig environment. Could it work that way?
Yes. But you must adjust the updated column on master and slave in the record of the slave (it exists twice, once on master and once on the slave node).