biemond / biemond-oradb

Puppet Oracle Database Module
Apache License 2.0
59 stars 113 forks source link

FATAL DBT-11211 #221

Closed pablogmorales closed 6 years ago

pablogmorales commented 6 years ago

Notice: Hello, I do not know if this is a bug or something that can be configured from the modules itself, but Im getting this error while installing, any help/advice really appreciated.

/Stage[main]/mystuff::Packages::Oracle::Dbinstance/Oradb::Database[testDb_Create]/Exec[oracle database testDb_Create]/returns: [FATAL] [DBT-11211] The Automatic Memory Management option is not allowed when the total physical memory is greater than 4GB. Notice: /Stage[main]/mystuff::Packages::Oracle::Dbinstance/Oradb::Database[testDb_Create]/Exec[oracle database testDb_Create]/returns: CAUSE: The current total physical memory is 15GB.

free -m total used free shared buff/cache available Mem: 15869 627 8011 36 7229 14754 Swap: 8079 0 8079

Red Hat Enterprise Linux Server release 7.4 (Maipo)

df -k /dev/shm/ Filesystem 1K-blocks Used Available Use% Mounted on tmpfs 8124940 16 8124924 1% /dev/shm

Thanks Regards

biemond commented 6 years ago

Hi,

you are in control of all the parameters and you specify something which causes this. Basically it will do the same as if you did in a silent install.

maybe you can look at 1 of the vagrant box configuration, use a working config and after that change it to what you want.

thanks

pablogmorales commented 6 years ago

Yes Im using silent install in a VM ( VmWare Box ) I was reading these two documents

http://www.oaktable.net/content/12cr2-dbca-automatic-memory-management-and-databasetype The above suggest reading the link bellow which suggest playing with memory_target and max_memory_target.

https://docs.oracle.com/en/database/oracle/oracle-database/12.2/admin/managing-memory.html#GUID-0E201F66-D280-472A-AD80-20AB8F7E9C01

As I can see in the template there is this parameter:

"memory_target" value="<%= @memory_total, and memory total in the example is equal to 800, what is 800? is that expressed in K/M/GB ? is a random number based on something?

And in this document where the user experienced the same error just removed the parameter. https://pierreforstmanndotcom.wordpress.com/2016/12/09/how-to-create-a-dbca-template-for-an-oracle-database-12-2-0-1-container-database-in-oracle-cloud/

FATAL] [DBT-11211] The Automatic Memory Management option is not allowed when the total >physical memory is greater than 4GB. CAUSE: The current total physical memory is 7,220GB. I have removed in CDBT.dbc file: initParam name="memory_target" value="2147483648"

oradb::database{ 'testDb_Create': oracle_base => '/oracle', oracle_home => '/oracle/product/12.2/db', version => '12.2', user => 'oracle', group => 'dba', download_dir => '/install', action => 'create', db_name => 'test', db_domain => 'domain.com', db_port => 1521, sys_password => 'Welcome01', system_password => 'Welcome01', data_file_destination => "/oracle/oradata", recovery_area_destination => "/oracle/flash_recovery_area", character_set => "AL32UTF8", nationalcharacter_set => "UTF8", init_params => {'open_cursors' => '1000', 'processes' => '600', 'job_queue_processes' => '4' }, sample_schema => 'TRUE', memory_percentage => 40, memory_total => 800, database_type => "MULTIPURPOSE", em_configuration => "NONE", require => Oradb::Listener['start listener'],

Thanks in advance Regards

pablogmorales commented 6 years ago

I found that I can disable it with the template like this

oradb::database{ 'testDb_Create': oracle_base => '/oracle', oracle_home => '/oracle/product/12.2/db', version => '12.2', user => 'oracle', group => 'dba', download_dir => '/install', action => 'create', template => 'dbtemplate_12.2', template_variables => { 'automaticMemoryManagement' => 'False'}, db_name => 'test', db_domain => 'test.com', db_port => 1521, sys_password => 'Welcome01', system_password => 'Welcome01', data_file_destination => "/oracle/oradata", recovery_area_destination => "/oracle/flash_recovery_area", character_set => "AL32UTF8", nationalcharacter_set => "UTF8", init_params => {'open_cursors' => '1000', 'processes' => '600', 'job_queue_processes' => '4' }, sample_schema => 'TRUE', memory_percentage => 40, memory_total => 800, database_type => "MULTIPURPOSE", em_configuration => "NONE", require => Oradb::Listener['start listener'],

But still same error with a warning and the value and the value is not changed to false , it forces back to true

grep -i automaticMemoryManagement /install/database_testDb_Create.rsp

Name : automaticMemoryManagement

automaticMemoryManagement=true

Notice: /Stage[main]/mystuff::Packages::Oracle::Dbinstance/Oradb::Database[testDb_Create]/Exec[oracle database testDb_Create]/returns: [WARNING] [DBT-06801] Specified Fast Recovery Area size (1,024 MB) is less than the recommended value. Notice: /Stage[main]/mystuff::Packages::Oracle::Dbinstance/Oradb::Database[testDb_Create]/Exec[oracle database testDb_Create]/returns: CAUSE: Fast Recovery Area size should at least be three times the database size (9,888 MB). Notice: /Stage[main]/mystuff::Packages::Oracle::Dbinstance/Oradb::Database[testDb_Create]/Exec[oracle database testDb_Create]/returns: ACTION: Specify Fast Recovery Area Size to be at least three times the database size. Notice: /Stage[main]/mystuff::Packages::Oracle::Dbinstance/Oradb::Database[testDb_Create]/Exec[oracle database testDb_Create]/returns: [FATAL] [DBT-11211] The Automatic Memory Management option is not allowed when the total physical memory is greater than 4GB. Notice: /Stage[main]/mystuff::Packages::Oracle::Dbinstance/Oradb::Database[testDb_Create]/Exec[oracle database testDb_Create]/returns: CAUSE: The current total physical memory is 15GB.

Any idea? Thanks Regards

pablogmorales commented 6 years ago

Hello It seems I was missing to specify the template directory.

Error: Could not retrieve catalog from remote server: Error 500 on SERVER: Server Error: Evaluation Error: Error while evaluating a Resource Statement, Evaluation Error: Error while evaluating a Function Call, Failed to parse template /install/dbtemplate_12.2.dbt.erb: Filepath: org/jruby/RubyIO.java Line: 3804 Detail: No such file or directory - /install/dbtemplate_12.2.dbt.erb

But the file exists, any idea why is complaining ?

$puppet_download_mnt_point = "/install" oradb::database{ 'testDb_Create': oracle_base => '/oracle', oracle_home => '/oracle/product/12.2/db', version => '12.2', user => 'oracle', group => 'dba', download_dir => '/install', action => 'create', template => 'dbtemplate_12.2', template_variables => { 'automaticMemoryManagement' => 'False', 'db_recovery_file_dest_size' => '4'}, db_name => 'test', db_domain => 'domain.com', db_port => 1521, sys_password => 'Welcome01', system_password => 'Welcome01', data_file_destination => "/oracle/oradata", recovery_area_destination => "/oracle/flash_recovery_area", character_set => "AL32UTF8", nationalcharacter_set => "UTF8", init_params => {'open_cursors' => '1000', 'processes' => '600', 'job_queue_processes' => '4' }, sample_schema => 'TRUE', memory_percentage => 40, memory_total => 800, database_type => "MULTIPURPOSE", em_configuration => "NONE", require => Oradb::Listener['start listener'],

puppet_download_mnt_point => $puppet_download_mnt_point,

ls -la /install/dbtemplate_12.2.dbt.erb -rw-r--r--. 1 oracle dba 10984 May 31 09:45 /install/dbtemplate_12.2.dbt.erb

file /install/dbtemplate_12.2.dbt.erb /install/dbtemplate_12.2.dbt.erb: XML document, ASCII text

Thanks Regards

pablogmorales commented 6 years ago

Hello I made some progress, now Im getting this

[ 2018-05-31 10:16:01.525 CDT ] ORA-00821: Specified value of sga_target 600M is too small, needs to be at least 668M

Can you tell me where is that value configured by default?

Thanks Regards

pablogmorales commented 6 years ago

Hello Im getting this error:

puppet agent -t Info: Using configured environment 'test' Info: Retrieving pluginfacts Info: Retrieving plugin Info: Retrieving locales Info: Loading facts Info: Applying configuration version '1527787015' Info: instance action: start with command startup

-bash: sqlplus: command not found Error: Error: /Stage[main]/mystuff::Packages::Oracle::Dbinstance/Oradb::Dbactions[start testDB_Create]/Db_control[instance control start testDB_Create]/ensure: change from 'stop' to 'start' failed:

But I think the DB is up and running.

sqlplus / as sysdba

SQL*Plus: Release 12.2.0.1.0 Production on Thu May 31 12:13:37 2018

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

Connected to: Oracle Database 12c Standard Edition Release 12.2.0.1.0 - 64bit Production

SQL>SQL> select * from v$database;

  DBID NAME      CREATED   RESETLOGS_CHANGE# RESETLOGS

PRIOR_RESETLOGS_CHANGE# PRIOR_RES LOG_MODE CHECKPOINT_CHANGE#


ARCHIVE_CHANGE# CONTROL CONTROLFI CONTROLFILE_SEQUENCE# CONTROLFILE_CHANGE#


CONTROLFI OPEN_RESETL VERSION_T OPEN_MODE PROTECTION_MODE


PROTECTION_LEVEL REMOTE_A ACTIVATION# SWITCHOVER# DATABASE_ROLE


ARCHIVELOG_CHANGE# ARCHIVEL SWITCHOVER_STATUS DATAGUAR GUARD_S SUPPLEME SUP


SUP FORCE_LOGGING PLATFORM_ID


PLATFORM_NAM

##########

oradb::database{ 'testDb_Create': oracle_base => '/oracle', oracle_home => '/oracle/product/12.2/db', version => '12.2', user => 'oracle', group => 'dba', download_dir => '/install', action => 'create', / template => 'dbtemplate_12.2', template_variables => { 'automaticMemoryManagement' => 'False', 'db_recovery_file_dest_size' => '4'}, / automatic_memory_management => false, db_name => 'test', db_domain => 'test.com', db_port => 1521, sys_password => 'Welcome01', system_password => 'Welcome01', data_file_destination => "/oracle/oradata", recovery_area_destination => "/oracle/flash_recovery_area", character_set => "AL32UTF8", nationalcharacter_set => "UTF8", init_params => {'open_cursors' => '1000', 'processes' => '600', 'job_queue_processes' => '4' }, sample_schema => 'TRUE', memory_percentage => 40, memory_total => 1024, database_type => "MULTIPURPOSE", em_configuration => "NONE", require => Oradb::Listener['start listener'],

puppet_download_mnt_point => $puppet_download_mnt_point, }

oradb::dbactions{ 'start testDB_Create': oracle_home => ('$oracle_home'), user => ('$user'), group => ('$group'), action => 'start', db_name => ('$db_name'), require => Oradb::Database['testDb_Create'], }

########### Do you now why is not finding the sqlplus command?

Thanks for your time and support Regards