I want to replicate an Oracle database to another server and have both databases working at the time, but one of
them only read-only. Is that possible? If so, is it possible to have the datafiles relocated to another location (a directory on a storage for example) and then only replicate the datafiles?
Part of the problem with Oracle's replication is that the database needs to be READ/WRITE to make the replicated changes. But you want to be READ ONLY as well. The first thing I'd suggest, without knowing more about your requirements, is to just create a user that has only SELECT privileges on your schema's objects and have those who access this database use that account. This way, changes can still be applied without the users of the database being able to change the data as well. If this is not possible, then Oracle's replication will not work for you.
Another technique is to use Oracle's Data Guard to create a standby database. Any changes to the primary database can get propogated to the standby server. The standby server can then be put into READ ONLY mode so that it can be used to generate reports, for example. The downside to this solution is that new changes will get journalled while in READ ONLY and will not get applied until you put the database into STANDBY mode again.
Dig deeper on Oracle database design and architecture
Have a question for an expert?
Please add a title for your question
Get answers from a TechTarget expert on whatever's puzzling you.