cancel
Showing results for 
Search instead for 
Did you mean: 

Mobilink ASA remote database synchronizing with two consolidated database (MySQL)

0 Kudos

Hi Community,

Is there a way to have a Mobilink ASA remote database synchronizing with two consolidated databases (MySQL)?

I have an scenario in which we need to  synchronize an ASA remote database, my scenario have a MySQL consolidated database and in the remote database also have a MySQL database. We need to put in the middle mobilink in order to synchronize both databases, so we need to have a publication from MySQL consolidated to ASA, an another publication from the MySQL remote database to the same ASA in order to synchronize all the changes in a group of tables.

In order to do that, we configure the following:

1. A first project to synchronize the MySQL consolidated database with a ASA remote database.

2. A second project to synchronize the MySQL remote database with a different ASA remote database.

3. A third project to synchronize the ASA's database, we tried in this way because if we use the same ASA remote database the data is not synchronized, but we have the same results having two ASA database because in appearance all the changes applied through mobilink are marked or are omitted in the other project, so the synchronization works without error but does not detect the rows inserted via the other mobilink project. If we insert in the ASA database manually it is correctly applied, the problem is in the insert/updates made through the other mobilink project.

Thanks in advance for any help or suggestion.

Best Regards

Douglas

Accepted Solutions (0)

Answers (1)

Answers (1)

former_member207653
Active Participant
0 Kudos

http://dcx.sap.com/index.html#sqla170/en/html/8156b9926ce21014a6ad9437b2635963.html

http://dcx.sap.com/index.html#sqla170/en/html/81b918596ce210148751d17f613010b8.html

http://dcx.sap.com/index.html#sqla170/en/html/81bb8f316ce210149a518a8e155ff37d.html

Douglas,
The Mobilink client/remote database can be either SAP SQL Anywhere or UltraLite.
Remote clients synchronize with a single consolidated database.
However, hierarchical database configurations are possible.

You can have a look at the link above for more details.

0 Kudos

Hi Mirco,

Thanks for your answer, I review the links you sent me.

Let me explain with more detail, I already have a hierarchical scenario but with MySQL, so we have up to four level in hierarchy, all with MySQL and manually transfer the changes between them. So, we need to put in the middle SAP SQL Anywhere Mobilink synchronization in order to synchronize the change automatically from MySQL databases and synchronize from the last level of hierarchy in order to consolidate in another MySQL database.

I know that having just one MySQL consolidated database and the rest of the hierarchy in ASA will be more easy, the problem is that currently we have an application that is usted either in the consolidated as the remote sites customized to MySQL and for the moment we can not replace the MySQL database with ASA.

This is our test environment just with a two level hierarchy:

MySQL remote database -> Mobilink -> ASA paired to remote database -> Mobilink -> ASA paired to consolidate database -> Mobilink -> MySQL Consolidated database.

I tried via SQL Remote between both ASA, but with the same results, that we can synchronize data up to the ASA paired to the consolidated database but all the change that comes from the previous synchronization in appearance are not recognized in the last mobilink connected to the consolidated database, in other words, changes propagated via other mobilink publication (remote) are not recognized as changes, because if we manually insert a row in the ASA paired to consolidated database the changes are synchronized. Firstly we are consolidating from remote sites to the consolidated, but next we need to propagate change in the catalog table in the consolidated to all the remote sites.

Is that possible this scenario?

Thanks again.

Best Regards,

Douglas

VolkerBarth
Active Participant
0 Kudos

I don't think that I really understand your requirements, but I (wildly!) guess it should be doable for one single SQL Anywhere Remote database to sync with two different consolidated databases. For that, you would have to use two different ML users - cf. that doc page. - Note, I have not implemented that myself and can't tell whether this will work when data from the same table is sync'ed with more than one consolidated databases. It may just work when sync'ing disjunct data to/from different consolidated databases.

That being said, here's another link from the fine SQL Anywhere Forum on some restrictions of MobiLink in unusual topologies:

How close can MobiLink get to "peer-to-peer" or "non-hierarchical" synchronization?

It might be helpful if you explain in more detail what exactly steps you have tried to do, say, whether you have used different ML user names within the subscriptions and the like.

former_member207653
Active Participant
0 Kudos

http://dcx.sap.com/index.html#sqla170/en/html/818793336ce210148d48ba0c5bbd0c89.html

It is true that remote sites can be used as consolidated databases for a different set of remotes in a hierarchical configuration. But in a correct Mobilink hierarchical data distribution you have SQL Anywhere / UltraLite at the bottom of the hierarchy <> (mobilink server 1) <> SQL Anywhere in the middle <> (mobilink server 2) <>  MySQL (or SQL Anywhere or any other supported consolidated db) on top.
Can you review your plan for migrating from MySQL to SAP SQL Anywhere?

regdomaratzki
Advisor
Advisor
0 Kudos

Volker, your setup in general could work, but only if you are dealing with a completely different subset of tables (well, data I guess) being sent to each consolidated database.  One of the optimizations that dbmlsync uses is that data applied to the remote database by a connection from dbmlsync will NOT be considered when determining what data to send to the consolidated database. In a scenario with two consolidated databases, if Cons #1 inserts a row, and this row is send down to an SQL Anywhere remote database, that insert at the remote will not be sent up to Cons #2, because it was applied by dbmlsync.

0 Kudos

Thanks Volker and Reg, a long time ago with no answer from me, but I want to tell you that the way we can do that was having ASA-Mobilink connected to a MySQL databases in both sides, then we configure SQL Remote to synchronize between both ASA and in appearance works fine, we made some test and we get the data from the MySQL through ASA via Mobilink, then from ASA to ASA via SQL Remote and finally from ASA Mobilink to MySQL.  Maybe we need to do more test in order to be sure is a right solution.

Best Regards,

Douglas

0 Kudos

Thanks Mirco, in a previous post I explain how we solve this scenario, as I said, maybe we need more test in order to be sure is working fine. And for sure, we are pointing to have ASA instead of MySQL in a future.

Best Regards,

Douglas