Recordando lo que aprendí el año pasado en los cursos de Oracle que hice y también en mi anterior trabajo, el usuario de sistema operativo dueño de la instalación de oracle puede conectarse como sysdba sin necesidad de conocer el password. Para ello sólo hay que hacer lo siguiente y automáticamente estaremos conectados a la instancia y además con permisos totales de administración. No obstante, en mi caso esto daba error:
C:\Documents and Settings\User>sqlplus /nolog
SQL*Plus: Release 10.2.0.2.0 - Production on Wed Mar 14 10:32:28 2007
Copyright (c) 1982, 2005, Oracle. All Rights Reserved.
SQL> conn / as sysdba
ERROR:
ORA-01031: insufficient privileges
Haciendo más memoria todavía, cuando se instala un servidor Oracle en windows, se crea el grupo ORA_DBA al que es necesario añadir todos los usuarios que se podrán conectar como dba. Mi usuario no estaba añadido, pero después de hacerlo seguía sin poder conectarme como sysdba.
Lo dejé y después de comer (siempre dicen que con el estómago lleno se piensa mejor) me acordé de que había un parámetro en el archivo sqlnet.ora en el que se puede configurar si se va a utilizar la autenticación que proporciona el sistema operativo o no. En mi máquina estaba deshabilitada, por lo que era obligatorio utilizar el password.
#SQLNET.AUTHENTICATION_SERVICES= (NTS)
NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)
Cambié la línea en cuestión del archivo para indicarle que utilizase la autenticación de windows (simplemente descomentándola):
SQLNET.AUTHENTICATION_SERVICES= (NTS)
NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)
Y probé de nuevo:
C:\Documents and Settings\User>sqlplus /nolog
SQL*Plus: Release 10.2.0.2.0 - Production on Wed Mar 14 10:35:29 2007
Copyright (c) 1982, 2005, Oracle. All Rights Reserved.
SQL> conn / as sysdba;
Connected.
Y una vez conectados nos podemos crear un usuario con permisos de dba para poder utilizarlo y conectarnos desde el Toad...
SQL> create user ivan identified by ivan;
User created.
SQL> grant connect,resource to ivan;
Grant succeeded.
SQL> grant dba to ivan;
Grant succeeded.
21 comentarios:
¡Pero es que el Oracle estaba instalado en tu máquina, sobre la que seguramente tienes todos los privilegios a nivel S.O.! (Administrar usuarios y grupos, etc, etc...)
Prueba a hacer lo mismo en un servidor de producción medianamente 'serio'...
Saludos.
Carlos.
Hola Carlos,
tienes toda la razón. En un servidor "de verdad" (unix) necesitas acceso como oracle o root para poder hacer esto. De todas formas es una forma de conseguirlo en una máquina windows.
Saludos, Iván.
Buenas.
"En un servidor "de verdad" (unix)"
No sólo en UNIX, en windows también. ¿Como vas a acceder al 'host' siendo un 'mindundi' y poder editar el sqlnet.ora?
Sólo te sirve si eres el 'boss' de la máquina (Windows/UNIX/Linux)
Saludos.
Carlos.
Muy buena explicacion. Gracias
Gracias Vicky, me alegro de que te haya gustado y resultado útil.
Saludos, Iván.
Excelente artículo.
Mas info sobre Oracle para desarrolladores y DBA en www.dba-oracle.com.ar
Gracias Diego por leerme y por dejar el comentario.
Saludos, Iván.
muchas gracias por este aporte, esta muy bien explicado, para aquellos que aun estamos iniciando con oracle. Hasta pronto y sigue subiendo cosas como esta que son de mucha utilidad. Dtb
Hola Jose David,
me alegro de que te haya gustado el post y que te resulte útil.
Saludos, Iván.
una pregunta, eso sirve solo si REMOTE_LOGIN_PASSWORDFILE esta en NONE?.. porque yo hice los pasos que indicas en mi equipo y aun no me deja conectarme.
Para añadir mas información, pues si deseas conectarte a un Linux y no tienen la clave del root, y es de vida o muerte conectarte al servidor, pues tienes que reiniciar el servidor y entrar al grub, luego inicias en single mode y ahi no te pide clave y te conectas como root, desde ahi podras poner las claves que quieras al usuario oracle y al root y reiniciar normalmente. Con esto ya puedes conectarte como root/oracle y modificar el sqlnet.ora. Si alguien sabe como hacer lo mismo en windows por favor expliquelo. GRacias
Hola Anónimo,
gracias por tu tip. Una forma de hacer lo que comentas (el "single" ya no funciona en grub) la conté hace ya unos años en esta entrada: http://lopezivan.blogspot.com/2007/03/recuperar-debian-sin-password-de-root.html
Gracias Ivan. Me funciono de 100
@Anónimo: Me alegro :-)
como conectar oracle con xcelsius
no se
Muy buen aporte...saludos..!!!
Gracias Ivan por la ayuda, me ayudo mucho!!
Saludos.
George Aquiño
Gracias wey
mil gracias, me sacaste de un apuro
Publicar un comentario