Eu já escrevi um artigo sobre isso. 

 

http://www.rosembergennes.com.br/index.php/dicas-oracle/214-ora-27100-spfile-pfile-memory-max-target-memory-target

 

 

 

Mas decidir fazer um resumo:

 

Se o banco estiver inciado, (startado open restritct etc...)

 

Podemos recriar o spfile ou pfile atraves do do comando.

 

 

 

CREATE SPFILE FROM MEMORY;

 

CREATE PFILE FROM MEMORY;

 

 

 

Normalmente os arquivos são criados na pasta /u01/app/oracle/product/11.2.0.4/db_1/dbs

 

Tambem podemos criar informando a pasta 

 

 

 

create pfile='/u01/app/oracle/product/11.2.0.4/db_1/dbs/<<NOME SEU BANCO>>.ora2' from memory;

 

 

 

Agora podemos tambem criar o PFILE como SPFILE informando inclusive a pasta

 

 

 

create PFILE='/u01/app/oracle/product/11.2.0.4/db_1/dbs/pfile<< Meu Banco >>.ora' from SPFILE='/u01/app/oracle/product/11.2.0.4/db_1/dbs/spfile<< Meu Banco >>.ora';

 

create SPFILE='/u01/app/oracle/product/11.2.0.4/db_1/dbs/s<<NOME SEU BANCO>>.ora' from PFILE='/u01/app/oracle/product/11.2.0.4/db_1/dbs/init<<NOME SEU BANCO>>.ora';

 

 

 

Mas se o banco tentar iniciar e aparecer algo como :

 

LRM-00109: could not open parameter file '/u01/app/oracle/product/11.2.0.4/db_1/dbs/init<<NOME SEU BANCO>>.ora'

 

A solução é abri o banco forçando a utilização de algum arquivo com a configuracao tipo :

 

 

 

startup PFILE='/u01/app/oracle/product/11.2.0.4/db_1/dbs/init<<NOME SEU BANCO>>.ora';

 

 

 

 

 

 

 

 

 

LEMBRANDO NOVAMENTE

 

 

 

L> SHOW PARAMETER spfile;

 

NAME     TYPE       VALUE

 

--------     -------       ---------

 

spfile       string       /app/oracle/product/10.2.0.4server/db_1/dbs/spfile<<SID>>.ora

 

 

 

Aproveite para ver o DBID do banco.

 

 

 

SQL>  select dbid,name from v$database;

 

 

 

      DBID NAME

 

---------- ---------

 

9999999999 SID_SEU_BANCO