Introduction

During Oracle Database Cloud Service (DBCS) post-clone steps, particularly when running the txkPostPDBCreationTasks.pl script, you might face the following error while attempting to create or work with the SYS password file

This blog explains the reason for this error and offers a step-by-step fix, including adding database configuration to the Oracle Cluster Registry (OCR) and properly creating the password file in the Oracle ASM +DATA disk group.

Error:- OPW-00029: Password complexity failed for SYS user: Password must contain at least 1 special character.

Issue : – This error appears in Oracle Database (12.2 and up, including 18c and 19c) when trying to create or modify the SYS user password during post-clone tasks, such as regenerating the password file with utilities like orapwd or certain post-clone scripts. Oracle enforces stricter password complexity checks to improve security for privileged accounts.

Oracle 12c and later enforce stricter password complexity rules for administrative users such as SYS. These rules typically require:

  • Minimum password length (e.g., 8 characters)
  • At least one digit
  • At least one special character (such as !, @, #, etc.)[1][2]

If your provided password doesn’t satisfy these requirements, you’ll encounter the OPW-00029 error.

Typical Scenario: The required database service (following the <DB UNQNAME>.<dbdomain> pattern) is missing, not started, or not properly registered in the Oracle environment.

Step-by-Step Solution

Create the Password File in the +DATA Disk Group

Use the orapwd or ASMCMD pwcreate utility to create the password file directly in Oracle ASM storage:

orapwd file=’+DATA/YOURDBNAME/orapwsys’ password=’Welcome@123′ dbuniquename=’YOURDBNAME’

Or, using ASMCMD:

asmcmd

ASMCMD> pwcreate –dbuniquename YOURDBNAME +DATA/YOURDBNAME/orapwsys Welcome@123

Replace YOURDBNAME with your database’s unique name..

Add the Database and Instance to OCR

Register your database and instance with Clusterware (OCR) to allow proper management using SRVCTL.

srvctl add database -d $ORACLE_UNQNAME -o /u01/app/oracle/product/19.0.0.0/dbhome_1

srvctl add instance -d $ORACLE_UNQNAME -i $ORACLE_SID -n hostname

  • Replace $ORACLE_UNQNAME with your database’s unique name.
  • Replace $ORACLE_SID with your Oracle System ID.

Replace hostname with the actual node’s hostname.

Verify the Configuration

After adding the database and instance, verify registration and status:

srvctl status database -d $ORACLE_UNQNAME

srvctl config database -d $ORACLE_UNQNAME

Additional Troubleshooting Tips

  • If the error persists, double-check your password for all required complexity rules.
  • To see the current database configuration and password file location, use srvctl config database -d $ORACLE_UNQNAME.
  • For multi-node RAC, repeat these steps for each required instance on their respective nodes.

Conclusion

The OPW-00029 error signals that Oracle’s password requirements have not been met for the SYS user during post-clone or setup scripts. By selecting a compliant password and correctly creating the password file in the ASM disk group, combined with adding your database and instance to OCR using SRVCTL, you’ll resolve the issue and ensure reliable post-clone operations in Oracle DBCS environments.

Regularly verify password complexity and registration steps to avoid such issues in future database cloning or DR setups.

Recent Posts

Start typing and press Enter to search