Let us we discuss pfile or spfile recovery technique without using rman or any kind of backup

S-1: login as sysdba user and start the database

SQL> startup
ORACLE instance started.

Total System Global Area 347340800 bytes
Fixed Size 1336456 bytes
Variable Size 285215608 bytes
Database Buffers 54525952 bytes
Redo Buffers 6262784 bytes
Database mounted.
Database opened.

S-2: Once start the database verify it name and mode

SQL> Select name,open_mode from V$database;

NAME             OPEN_MODE
-------------     ------------
CA                READ WRITE

S-3: check the background dump test location

SQL>show parameter background_dump_dest;

NAME                    TYPE     VALUE   
---------              --------  -----------
background_dump_dest    string   /u01/app/oracle/product/11.2.0.3/diag/rdbms/ca/CA/trace

S-4: shut down the database

SQL> shut immediate
Database closed.
Database dismounted.
ORACLE instance shut down.

S-5: Go to the spfile location

SQL> !
[oracle@goldengatesource ~]$ cd /u01/app/oracle/product/11.2.0.3/db_1/dbs/
[oracle@goldengatesource dbs]$ ls
hc_CA.dat init.ora orapwCA peshm_CA_0 spfileCA.ora
initCA.ora lkCA orapwRAN spfileRAN.ora

(Note: Here we have to remove spfile , if suppose we had a pfile for that database remove that file also )

[oracle@goldengatesource dbs]$ rm spfileCA.ora initCA.ora
[oracle@goldengatesource dbs]$ ls
hc_CA.dat lkCA orapwCA orapwRAN peshm_CA_0 spfileRAN.ora

S-7: now we are going to login as sysdba from dbs location

[oracle@goldengatesource dbs]$ sqlplus '/as sysdba'

SQL*Plus: Release 11.2.0.1.0 Production on Thu Jun 30 07:02:44 2016

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

Connected to an idle instance.

S-8: Now trying to start the database it through an error like below

SQL> startup
ORA-01078: failure in processing system parameters
LRM-00109: could not open parameter file '/u01/app/oracle/product/11.2.0.3/db_1/dbs/initCA.ora'

s-9: now we are going to background dump test location which we found it before background_dump_test parameter location

SQL> !

[oracle@goldengatesource dbs]$ cd /u01/app/oracle/product/11.2.0.3/diag/rdbms/ca/CA/trace
[oracle@goldengatesource trace ]$ cat alert_CA.log
(the cat command will show all actions of database)

S-10: since we don't have pfile and spfile so we 'll get back into the alert log file select system parameter with non-default values

processes = 150
memory_target = 332M
control_files = "/u01/app/oracle/product/11.2.0.3/oradata/CA/control01.ctl"
control_files = "/u01/app/oracle/product/11.2.0.3/flash_recovery_area/CA/control02.ctl"
db_block_size = 8192
compatible = "11.2.0.0.0"
log_archive_format = "%t_%s_%r.dbf"
db_recovery_file_dest = "/u01/app/oracle/product/11.2.0.3/flash_recovery_area"
db_recovery_file_dest_size= 3852M
undo_tablespace = "UNDOTBS1"
remote_login_passwordfile= "EXCLUSIVE"
db_domain = ""
dispatchers = "(PROTOCOL=TCP) (SERVICE=CAXDB)"
audit_file_dest = "/u01/app/oracle/product/11.2.0.3/admin/CA/adump"
audit_trail = "DB"
db_name = "CA"
diagnostic_dest = "/u01/app/oracle/product/11.2.0.3"

S-11: From trace location into go dbs location

[oracle@goldengatesource trace ]$ cd /u01/app/oracle/product/11.2.0.3/db_1/dbs/
[oracle@goldengatesource dbs]$ ls
hc_CA.dat lkCA orapwCA orapwRAN peshm_CA_0 spfileRAN.ora

S-12: after went dbs location create a new file in the name of 'initCA.ora'

[oracle@goldengatesource dbs]$vi initCA.ora

(Note copy and paste line from alert log i.e s-10)

S-13: once we done to create a pfile login from dbs location

[oracle@goldengatesource dbs]$ sqlplus '/as sysdba'

SQL*Plus: Release 11.2.0.1.0 Production on Thu Jun 30 07:04:25 2016

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

Connected to an idle instance.

S-14: start the database

SQL> startup
ORACLE instance started.

Total System Global Area 347340800 bytes
Fixed Size 1336456 bytes
Variable Size 226495352 bytes
Database Buffers 113246208 bytes
Redo Buffers 6262784 bytes
Database mounted.
Database opened.

S-15: check the name and mode of the database

SQL> Select name,open_mode from V$database;

NAME             OPEN_MODE
-------------     ------------
CA                READ WRITE

S-16: create spfile into pfile

SQL> create spfile from pfile;

File created.

S-17: check the parameter by using which file database parameter instance is working

SQL> show parameter spfile

NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
spfile string

we found our database instance is working pfile s-18: shut down the database because we have spfile so start our database using spfile

SQL> shut immediate
Database closed.
Database dismounted.
ORACLE instance shut down.

SQL>!
 [oracle@goldengatesource dbs]$ls
 hc_CA.dat lkCA orapwCA orapwRAN peshm_CA_0 spfileRAN.ora spfileCA.ora initCA.ora

(Note : here spfile and pfile have been shown above then start our database and use s-17 )