Cómo desbloquear el usuario de SYS en Oracle

Hola de nuevo, amigos. Hoy vamos a enseñaros cómo desbloquear el usuario de SYS en Oracle. Se puede llegar a bloquear el usuario SYS al introducir erróneamente la contraseña. Esto ocurre cuando se tiene el parámetro Failed login attempts establecido. Por ejemplo: Failed login attempts=3. Esto implica que si se realizan tres intentos fallidos, se bloqueará el usuario de SYS.

¿Qué es el usuario SYS?

El usuario SYS posee el privilegio de (SYSDBA), lo que permite a los DBAs realizar tareas administrativas de alto nivel, como copias de seguridad, restauraciones, etc…Es por ello, que hay que tener especial cuidado con quien accede a este cuenta, ya que con sus permisos, sería el equivalente al usuario root de Linux, pero aplicado a la base de datos Oracle.

Desbloquear el usuario de SYS

Después de fallar en varias oportunidades la clave de SYS nos encontramos con el ORA-28000: The account is locked. Informando que tenemos el usuario de SYS bloqueado:

Comprobamos que el usuario SYS esté bloqueado

Ingresaremos a la base de datos con el usuario de SYSTEM para intentar desbloquear el usuario de SYS. Pero el user de SYSTEM se utiliza para crear tablas y vistas adicionales que muestran información administrativa, tablas internas y vistas utilizado por varias opciones y herramientas de la base de datos ORACLE. No se recomienda utilizar el esquema SYSTEM para almacenar tablas de interés para usuarios no administrativos.

SQL> alter user sys account unlock;
alter user sys account unlock
*
ERROR at line 1:
ORA-01031: insufficient privileges

SQL> select USERNAME, ACCOUNT_STATUS from dba_users where username = 'SYS';
SQL> col USERNAME for a15
SQL> /

USERNAME        ACCOUNT_STATUS
--------------- --------------------------------
SYS             LOCKED(TIMED)

1 rows selected.

¿Cómo desbloqueamos el usuario?

Recreando el Password file de la instancia podemos desbloquear el usuario de SYS. En este caso, tenemos el orapwd dentro del ASM. Lo que debemos hacer es ubicar el archivo y generar copia de seguridad antes de recrearla. Después de ello, ejecutaremos el comando para recrear un nuevo fichero de orapwd.

Cómo desbloquear el usuario de SYS

Para finalizar, hacemos una consulta directamente en la base de datos ORCL para validar el estado del usuario SYS después de haber creado el nuevo password file.

[oracle@localhost /home/oracle]$ sqlplus sys@ORCL as sysdba

SQL*Plus: Release 19.0.0.0.0 - Production on Tue Feb 7 09:08:00 2023
Version 19.14.0.0.0

Copyright (c) 1982, 2021, Oracle.  All rights reserved.

Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.14.0.0.0

SQL> select USERNAME, ACCOUNT_STATUS from dba_users where username = 'SYS';

USERNAME        ACCOUNT_STATUS
--------------- ---------------
SYS             OPEN

SQL>

Esperemos que esta entrada os haya sido de utilidad. Si aun así, seguís teniendo problemas con el usuario de SYS o cualquier otro problema, podéis contactarnos sin compromiso. Confía en los profesionales para el mantenimiento de tu base de datos Oracle.

¿Aún no conoces Query Performance? Descubre cómo puede ayudarte en tu entorno Oracle. Más información en su página de LinkedIn.

Sígue a GPS en LinkedIn

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *