How to startup Oracle Database with an NFS mount?


#1

I currently have an Oracle Database which works just fine on 1 server.

I want to share the folder which contains its’ control file to another server via an NFS mount.

However, when mounted I get presented with the error:
ORA-00205: error in identifying control file, check alert log for more info

The mount command I’m running is:
sudo mount -v -t nfs4 -o intr,bg,nolock,port=2222,mountport=3333,tcp localhost:/oracle/oradata/stby/ /u02/app/oracle/oradata/stby/

And my /etc/exports file from the attempted mount machine is:

/oracle/oradata/stby *(no_auth_nlm,insecure_locks,rw,sync,no_root_squash,nohide,insecure)

The mount in itself works! I just need to find a way in which the control file doesn’t get ‘locked’ I guess.

Thanks & Regards
Camillelola


#2

This is really not the right place for these kinds of questions.

Please note that this forum is mostly aimed at supporting the Visual Paradigm modeling & design software. Although there is some affinity with databases, mostly with database design through use of ERD, it’s not really a technical support forum (well, other than providing technical support for Visual Paradigm itself of course).

Therefor I think you may get better results if you’d ask this question on the Oracle support forums or perhaps on the support forums for whatever operating system you’re using.

For reasons mentioned above I’m not going to follow up on this message but I can tell you this:

Your idea is never going to work, and it doesn’t limit itself only to the Oracle database. You can’t just make a programs data folder accessible to another program instance and expect things to work. This is also why locking mechanics exist.

Think about it: what would happen if both instances were to try and write to the same tables and/or data files at the same time? This could effectively result in one instance adding a certain record while the other immediately removes it. Worse yet: because the first instance added it it’s also become part of their cache resulting in “ghost records”. The system would be sure the record exists because it added it, but because the other instance removed it again without its knowledge the database tables have now become corrupt, within the context of the first instance of course.

I don’t know what you’re trying to do here, but I assume you want 2 servers to use the same database(s). To set something like that up you’ll need to look into setting up a database cluster of some sort.

Instead of trying to make the data available to another instance look into ways to make the servers replicate their data amongst themselves. That way you’ll end up with 2 autonomous database instances which will be able to process the same data.


#3

Thanks for the information

Regards
Camillelola