sql >> Database teknologi >  >> RDS >> Oracle

ORA-00838

Stødte ind i et interessant problem forleden, som tog mig et stykke tid at løse. Jeg forsøgte at starte en ikke-produktionsdatabase og modtog denne fejl:

ORA-00838: Specified value of MEMORY_TARGET is too small, needs to be at least 1428M
ORA-01078: failure in processing system parameters

For det første siger Oracle-dokumentationen for min version, at minimumsværdien for MEMORY_TARGET er 512 MB, men ovenstående fejl fortæller mig, at jeg skal bruge en større værdi. Så det næste logiske trin er at få hjælp til denne fejlmeddelelse.

[oracle@host ~]$ oerr ora 838
00838, 00000, "Specified value of MEMORY_TARGET is too small, needs to be at least %sM"
// *Cause: The specified value of MEMORY_TARGET was less than the sum of the
// specified values for SGA_TARGET and PGA_AGGREGATE_TARGET.
// *Action: Set MEMORY_TARGET to at least the recommended value.

Jamen det er interessant. Her er mit PFILE-indhold.

*.audit_file_dest='/u01/app/oracle/admin/orcl/adump'
*.audit_trail='DB_EXTENDED'
*.compatible='11.2.0.0.0'
*.control_files='/u01/app/oracle/oradata/orcl/data01/control01.ctl','/u01/app/oracle/oradata/orcl/data02/control02.ctl','/u01/app/oracle/oradata/orcl/data03/control03.ctl'
*.db_block_size=8192
*.db_domain='naucom.com'
*.db_files=1100
*.db_name='orcl'
*.db_recovery_file_dest_size=214748364800
*.db_recovery_file_dest='/archivelog'
*.diagnostic_dest='/u01/app/oracle'
*.dispatchers='(PROTOCOL=TCP) (SERVICE=orclXDB)'
*.event=''
*.job_queue_processes=10
*.memory_target=1048576000
*.open_cursors=300
*.processes=1600
*.remote_login_passwordfile='EXCLUSIVE'
*.sec_case_sensitive_logon=FALSE
*.undo_tablespace='UNDOTBS4'

Bemærk, at jeg ikke angiver SGA_TARGET eller PGA_AGGREGATE_TARGET. Så fejlmeddelelsen hjælp hjalp ikke her. Efter at have løst problemet opdagede jeg, at nogen havde ændret min parameterfil.

*.processes=1600

Dette er en lille ikke-produktionsdatabase. Mit MEMORY_TARGET er kun 1 GB. Så hvorfor er PROCESSER sat til så stor en værdi? Da jeg returnerede dette til en meget mindre værdi på 600, havde instansen ingen problemer med at starte op. Antallet af processer udleder antallet af sessioner, hvilket nødvendiggør en højere SGA. Den første fejlmeddelelse var korrekt, men gav ingen ledetråde til, hvorfor problemet eksisterede.


  1. Sådan rettes typiske WordPress-fejl

  2. Fejl ved indstilling af n_distinct ved hjælp af en plpgsql-variabel

  3. Hvornår skal vi bruge NVARCHAR/NCHAR i stedet for VARCHAR/CHAR i SQL Server?

  4. Hvordan IKKE REGEXP virker i MariaDB