What is the specific reason for creating the oracle
user to install Oracle 10g or 11g, even though root
exists and can be used?
Is it possible to install as root
by adding root
to the oinstall
group?
Every suitable technical reason is welcome.
-
4Primarily for security reasons. Any Unix admin worth their while would understand that privilege separation is very important - why should a DBA, who may only have a simple grasp of Unix, be left with full root access on a server?Philᵀᴹ– Philᵀᴹ2012年10月11日 07:46:08 +00:00Commented Oct 11, 2012 at 7:46
-
Can i edit the above question to include additional pointsoratab– oratab2012年10月11日 08:15:44 +00:00Commented Oct 11, 2012 at 8:15
-
1I'll add that there's no technical reason why you can't run the RDBMS as root. I'd ask you though: Why do you want to run under the root user?Philᵀᴹ– Philᵀᴹ2012年10月11日 09:21:37 +00:00Commented Oct 11, 2012 at 9:21
-
i specifically don't want to run it as root, but i want to know the reason why it doesn't install as root user. Thanks a lot for answer and commentsoratab– oratab2012年10月15日 06:51:08 +00:00Commented Oct 15, 2012 at 6:51
1 Answer 1
PostgreSQL refuses to run under root, and the reasons there may be of interest in this question.
This approach allows you to essentially separate UNIX and db permissions as Phil mentions above, but there are a number of reasons why this is important especially when you have a programmable server like Oracle.
The first is that generally speaking you want to be able to contain the behavior of the system in the event of a bug in your stored procedures or otherwise. Bugs in stored procedures that allow the db to overwrite arbitrary files are really bad in a database, but they become far worse when you have the ability to overwrite operating system binaries. So this allows you to lock down and contain damage in a way you can't do if the db runs as root.
The second is that you can essentially give the DBA a smaller area of responsibility.