We have data. It needs sharing. What are the options?
One must assume that the data is required, so sharing it is necessary.
If we do not provide SQL as our API, then we need to build something to provide that.
We could build an HTTP API to be called. This API could provide the state of the data now, or we could attempt to provide a solution that provides a flow of events.
We could write data to another database and that is the contract that we share. This still provides SQL as the API but at least the main application database can change at will as long as the contract into the secondary database is maintained and supported.
We could event the data and another service could listen to the events, reads the data and makes it available in another database and that is the contract with the consumer(s).
It is inevitable that something needs to write the data somewhere for the other application that wants it to gain access to it. It will depend on what that application is as to what makes the most sense. But something will need to be built to provide the data.
There are many solutions that will hopefully keep your system changeable. Find one that does not require large amounts of up front work, continuous maintenance, and provides the feedback needed to tells us if we are breaking our consumers.