Database Administrators Stack Exchange is a question and answer site for database professionals who wish to improve their database skills and learn from others in the community. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

When I connect to my local development database, I get an error saying the password has expired. I've been trying to change it with sqlplus to no avail:

C:\>sqlplus TPMDBO/password@localhost/global

SQL*Plus: Release Production on Wed Nov 6 15:41:02 2013

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

ORA-28001: the password has expired

Changing password for TPMDBO
New password:
Retype new password:
ORA-01017: invalid username/password; logon denied

Password unchanged

I get this error no matter what new password I type in.

My main question is how I can reset this password. However, I'm also curious if there's a way to make the password never expire. This is a local dev database, I really don't care about the security or anything and none of the data on it is important.

share|improve this question

migrated from Nov 7 '13 at 5:38

This question came from our site for professional and enthusiast programmers.

up vote 7 down vote accepted

If the account is locked, as far as I know, the user can't change it. The Oracle output in your question shows the account is not locked, but expired.

Log in to your database as a user who has privilege to alter other users (for example, SYS) and issue the following command:

ALTER USER tmpdbo IDENTIFIED BY new_password;

You can change the expiration behaviour. There already was a question about that on Stack Overflow:

Make Oracle Password Never Expire

share|improve this answer

Late to the party here but I just ran into this and at least in my case I am fairly certain it is an oracle bug, possibly with compatibility between client versions. I was getting this error connecting to an 11g database using the 12g sql*plus client while another person was able to successfully log in and change the password using the 11g sql*plus client. They always say things are backwards compatible. They aren't always right...

share|improve this answer

log into sqlplus as username:SYSTEM give previous password

new_password:<new password>
retype new password:<new password>
password is set
share|improve this answer
This changes the password for the user SYSTEM, not the user "TPMDBO". – Colin 't Hart Jun 30 '15 at 9:18

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.