• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 654
  • Last Modified:

WIN NT: CONNECT INTERNAL without a password

My backup scripts shutdown the database before making a
full offline backup. The problem is that I have to connect
as INTERNAL providing a password but I do not want to let it
written in my scripts (which are supposed to run at midnight
under user Administrator in Windows NT).

Setting DBA_AUTHORIZATION to BYPASS in Windows NT registry
eliminates the need for a password to connect as INTERNAL
(even when there is a password file). I do not want to
let DBA_AUTHORIZATION set to BYPASS all the time, but just
for the duration of the backup. I have tried to set it as an
environmental variable in the backup.bat file, but it did
not work.

I know that it is simpler in Unix: if the user running
Server Manager belongs to group DBA there is no obligation
to provide a password for INTERNAL.

So the questions are:
1) Is there any environmental variable which allows to bypass
   the password for internal and which can be set from whithin
   my scripts?

2) Is there any way to momentarily change the value of
   DBA_AUTHORIZATION in the registry without the assistance
   of the registry editor?

3) Does Oracle Workgroup Server for Windows NT provide a sort
   of "DBA group" feature similar to that in Unix?

Thanks in advance.
0
amonteros
Asked:
amonteros
1 Solution
 
junfebCommented:
Why don't you try this -
Set the remote_login_passwordfile = none in your init.ora

make the ntuser belong to the ORA_ORCL_DBA group . This is equivalent of the sysdba
role in unix .

Then the user can run
svrmgr > connect / as sysdba

The global group equivalent of sysdba is ora_dba.

The user with the sysdba authority can shut down the database and restart the database.


0
 
amonterosAuthor Commented:
I do most of my job from a remote PC running Oracle
Enterprise Manager. Setting REMOTE_LOGIN_PASSWORD_FILE to
NONE would not let me CONNECT INTERNAL from a remote PC.

Thanks anyway, junfeb.

0
 
junfebCommented:
What version of ORacle Database are you using on your NT?
0
Concerto Cloud for Software Providers & ISVs

Can Concerto Cloud Services help you focus on evolving your application offerings, while delivering the best cloud experience to your customers? From DevOps to revenue models and customer support, the answer is yes!

Learn how Concerto can help you.

 
junfebCommented:
Please check out Pages 10-20 to 10-21 of your Oracle8 Enterprise edition - getting Started for Windows NT Manual for instructions .You can keep the remote_login_passwordfile setting to shared or Exclusive and be able to connect as internal from a remote client without a password. It still involves creating the new local group ORA_SID_DBA for one instance or a Global ORA_DBA for all instances.  If you don't have the manual, I can list out the exact instructions for you.

Thanks.
0
 
amonterosAuthor Commented:
  Oracle7 Server Release 7.3.3.3.0 - Production Release
   With the distributed option
   PL/SQL Release 2.3.3.3.1 - Production
0
 
xiaodongCommented:
Easy.  All you need to do is create 2 .reg files for the two values for DBA_BYPASS registry key.  In your bacup script, run the .reg which set the bypass=true then do the backup, when you are done, run the .reg which set the bypass=false.  
(If you don't know how to create .reg file, please consult the NT on-line help or the help in registry editor)
0
 
amonterosAuthor Commented:
Thanks xiaodong, but I had already discovered that. This was the reason why I posted another question in Customer Service category (check it out) asking how I can cancel this question and get my points back.

Thanks again


0
 
amonterosAuthor Commented:
The solution is setting DBA_<SID>_AUTHORIZATION to BYPASS in the registry (the path is HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE) before the backup and reset it to any other value after the backup. One of the ways to do that is by means of 2 files, say before.reg and after.reg, and loading them at the rigth times. You cannot load it with "regedit xxx.reg" in a .BAT file due to be executed with some kind of scheduling system like "at" because regedit asks for an acknowledgement interactively. But you can use Pearl to load the xxx.reg files without a prompt.


0
 
amonterosAuthor Commented:
Sorry, I meant Perl instead of Pearl.
0
 
linda101698Commented:
I'm posting the solution found by amonteros so the answer can be saved in the previously asked questions.

Linda Gardner
Customer Service @ Experts Exchange    

      The solution is setting DBA_<SID>_AUTHORIZATION to BYPASS in the
     registry (the path is HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE)
     before the backup and reset it to any other value after the backup. One of the
     ways to do that is by means of 2 files, say before.reg and after.reg, and
     loading them at the rigth times. You cannot load it with "regedit xxx.reg" in a
     .BAT file due to be executed with some kind of scheduling system like "at"
     because regedit asks for an acknowledgement interactively. But you can use
     Perl to load the xxx.reg files without a prompt.
0

Featured Post

Get your problem seen by more experts

Be seen. Boost your question’s priority for more expert views and faster solutions

Tackle projects and never again get stuck behind a technical roadblock.
Join Now