I have a 300 GB MSSQL 2016 production database on a server and i will need to make a copy of this database on another server for reporting purposes.
On the production database, there are normal clustered/non-clustered indexes and daily read-write operations are happenning.
On the reporting side, I will have the same database tables with columnstore indexes so i will get the oppurtunity to get my report query results faster than live database.
The idea was fine, until i could not find a proper way to replicate these 2 databases and keep them in sync (like with max. 5 mnts tolerance)
I have tried some Log Shipping topologies, didnt work well.
I have tried SQL Replication between these two databases but it does not give %100 data consistency and it is not tolerable for mistakes like when you add or drop a column in table or when you want to deliver a new table to the reporting database etc.
PS. I would consider to have one replica of my prod database in sync (beside reporting database) (Like log shipping read only secondary). So im ready to create another server (totally 3 servers) for a secondary replicated database (1- prod, 1-replica, 1-reporting) if I would find a proper topology..
What do you think is the best way in my case ?
Thanks in advance.