A medida que el estado de otras respuestas, cambiando el perfil del usuario (por ejemplo, el perfil de 'default') apropiada dará lugar a las contraseñas, que una vez establecido, no expirará.
Sin embargo, como señala un comentador, es posible que las contraseñas establecidas en los valores anteriores del perfil ya hayan expirado y (si después del período de gracia especificado del perfil) la cuenta se bloqueó.
La solución para contraseñas caducadas con cuentas bloqueadas (según lo dispuesto en un comentario de respuesta) es utilizar una versión del comando ALTER USER:
ALTER USER xyz_user ACCOUNT UNLOCK;
Sin embargo, el comando de desbloqueo sólo funciona para las cuentas que la cuenta la realmente bloqueado, pero no para aquellas cuentas que se encuentran en el período de gracia, donde la contraseña ha expirado pero la cuenta aún no está bloqueada. Por estas cuentas de la contraseña debe ser reiniciado con otra versión del comando ALTER USER:
ALTER USER xyz_user IDENTIFIED BY new_password;
A continuación se muestra un SQL * Plus script que un usuario privilegiado (por ejemplo, usuario 'SYS') se puede utilizar para restablecer la contraseña de un usuario poco al valor actual hash almacenado en la base de datos.
REM Tell SQL*Plus to show before and after versions of variable substitutions
SET VERIFY ON
SHOW VERIFY
REM Tell SQL*Plus to use the ampersand '&' to indicate variable substitution expansion
SET DEFINE '&'
SHOW DEFINE
REM Specify in a SQL*Plus variable the account to 'reset'
DEFINE USER_NAME = 'xyz_user'
REM Show the status of the account before reset
SELECT
ACCOUNT_STATUS,
TO_CHAR(LOCK_DATE, 'YYYY-MM-DD HH24:MI:SS') AS LOCK_DATE
FROM
DBA_USERS
WHERE
USERNAME = '&USER_NAME';
REM Create a SQL*Plus variable to hold the hash of existing password
DEFINE OLD_PASSWORD = ""
REM Tell SQL*Plus where to store the value to be selected with SQL
COLUMN PWORDHASH NEW_VALUE OLD_PASSWORD
REM Select the old hash password as a delimited string
SELECT
'''' || PASSWORD || '''' AS PWORDHASH
FROM
SYS.USER$
WHERE
NAME = '&USER_NAME';
REM Show the contents of the SQL*Plus variable
DEFINE OLD_PASSWORD
REM Reset the password
ALTER USER &USER_NAME IDENTIFIED BY VALUES &OLD_PASSWORD;
REM Show the status of the account after reset
SELECT
ACCOUNT_STATUS,
TO_CHAR(LOCK_DATE, 'YYYY-MM-DD HH24:MI:SS') AS LOCK_DATE
FROM
DBA_USERS
WHERE
USERNAME = '&USER_NAME';
creo que podría ser mejor pedir esto en serverfault.com. No voy a forzarlo porque dijiste que lo estás usando para el desarrollo, y creo que todavía hay una posibilidad de que alguien aquí lo sepa y/o los demás puedan beneficiarse de esta información. –
Creo que haré justamente eso. Estaba debatiendo para qué sitio era más apropiado, ya que es una cuestión de base de datos básica y no tanto una cuestión de DBA. –
No estoy seguro de cuál es la política de engaño para las preguntas entre sitios, pero aquí está el enlace: http://serverfault.com/questions/37622/how-do-i-turn-off-oracle-password-expiration –