Two Mautic - One Database of Contacts/Emails/Segment ?

We are looking to merge the Database of contacts/emails we’ve sent from one Mautic Instance with the one of another Mautic Instance that has been barely used and be able to use the two instances simultaneously and have the data of a lead contacted from one instance to be reflected in the interface of the second instance.

First instance is 2.14.2 installed with Bitnami, has 240k contacts, 7k segments and 6k broadcast emails.

The second one is 2.15.0 and we don’t care about keeping any of its contacts/emails/segments.

So I’m guessing this job might involve more than just its headline in order to be feasible if it’s even feasible in the first place?

Remote OK?: Yes, but if you live in Berlin, Germany we can meet to talk about it face to face.

Salary/remuneration: Depends on the track record for such projects. But we have a budget for it.

If you have any questions related to the technical part of the project feel free to post them here so I can answer in front of everybody.

Thank you for your time,

Yaniss @Sweet Spot PR

I have done this but with both Mautic instances having the same Mautic version. It works fine. Main concern is that you need to keep track of what’s going on on the “other” instance as it will change data for both instances, it will get tricky if your marketers are not very clear of the consequences.

Crons have to be thought carefully (or just run them in one of the instances alone) otherwise you can get duplicated data all over the place…

I would say sharing a database with 2 different versions of Mautic COULD be dangerous, but that danger can be reduced to zero by closely looking at all the tables and the database schema.
As far as I know, there are differences between those 2 versions in the database schema.

I would expect some custom code would be needed, be it in Mautic, external PHP, or directly on the SQL layer.

But most of all, I would consider other options, why do you want to do this? can’t you just run a second copy of the same version? Can you achieve the same result you are looking for in any other way?
For example running 2 Mautics each with its own independent database and connecting those 2 instances via API makes a lot more sense, makes it more secure and fail-proof and would give you much better control over when and how data flows.

2 Likes

Hey! Thank you so much for getting back to this thread, and sorry for the delay…

So yeah I figured it might make more sense to first contract a Mautic version upgrade/downgrade to have the two instances at the same “level”.

The reason we want to do this is that we are going to use two different domains/companies to send emails. But we want the history of the contacts to be shared across the two companies. We also want to separate the email reputation of both of these domains/not have them share the same IP/ESP account.

For example running 2 Mautics each with its own independent database and connecting those 2 instances via API makes a lot more sense, makes it more secure and fail-proof and would give you much better control over when and how data flows.

I haven’t thought about that but I see how that could work indeed.

I’ve been told about a combination of MySQL scripts a few cron jobs and a plugin can be a solution. Does that ring a bell to you?

There needs to be a clustered database where it would prevent two writes to happen to the same record at the same time for this to be effective. This version of mariaDB would need to be tested with mautic to achieve that goal.