Hitachi ax m137 manual dexterity. ORA-12546: TNS:permission denied when arserverd starts When the Remedy AR System is installed on the same server as the database, the O/S user that starts the AR. Dear Expert,I am trying to setup a new 4.7 system with oracle 9.2 system and copy the source DB from another system on Windows 2003 environment.I have managed to recover the database and tnsping and lsrcntl status showing the listener is running fine.When.
Active5 years, 6 months ago
On a RedHat 6 server, a third party application requires to be root to run and needs access to sqlplus. I have a running database, I can run sqlplus as user 'oracle'. When logged in as user root, 'sqlplus usr/pwd@dbname' works as expected. The trouble is that this agent needs to run sqlplus with no parameters and it always returns ORA-12546: TNS:permission denied.
I've read a dozen times that enabling root to launch Oracle is a security issue but I really have no other choice.
Running Oracle 11.2.0.1.0.
Any help will be much appreciated as I've googled for 2 days with no success.
PierreVnPierreVn
1 Answer
From the documentation, ORA_12546 is:
ORA-12546: TNS:permission denied
Cause: User has insufficient privileges to perform the requested operation. Citavi 3 download kostenlos. Action: Acquire necessary privileges and try again.
Which isn't entirely helpful, but various forum and blog posts (way too many to link to, Googling for the error shows a lot of similar advice) mention permissions on a particular part of the installation,
$ORACLE_HOME/bin/oracle , which is a crucial and central part of most of the services.
Normally the permissions on that file would be
-rws-r-s--x , with the file owned by oracle:dba , and this error can occur when the word-writable flag - the final x in that pattern - is not set. Anyone in the dba group will still be able to execute it, but those outside will not.
Ora 12514 Tns Listener
Your listener seems to be fine as you can connect remotely, by specifying
@dbname in the connect string. The listener runs as oracle (usually, could be grid with HA, RAC or ASM) so it is in the dba group and can happily hand-off connections to an instance of the oracle executable.
When you connect without going via the listener, you have to be able to execute that file yourself. It appears that
root cannot execute it (or possibly some other file, but this is usually the culprit, apparently), which implies the world-writable bit is indeed not set.
As far as I can see you have three options:
Oracle Ora 12546 Tns Permission Denied
You said you don't have this problem on another server, and that the file permissions are the same; in which case
root might be in the dba group on that box. But I think the third option seems the simplest and safest. There is a fourth option I suppose, to install a separate instant client, but you'd have to set TWO_TASK anyway and go over SQL*Net, and you've already ruled that out.
I won't dwell on whether it's a good idea to run
sqlplus (or indeed the application that needs it) as root , but will just mention that you'd could potentially have a script or function called sqlplus that switches to a less privileged account via su to run the real executable, and that might be transparent to the application. Unless you switch to the oracle account though, which is also not a good idea, you'd have the same permission issue and options.
Ora 12546 Tns Permission Denied Vista DownloadAlex PooleOra 12546 Tns Permission Denied Vista FreeAlex Poole
142k77 gold badges117117 silver badges198198 bronze badges
Got a question that you can’t ask on public Stack Overflow? Learn more about sharing private information with Stack Overflow for Teams.
Not the answer you're looking for? Browse other questions tagged oracle11grootsqlplus or ask your own question.Comments are closed.
|
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |