Skip to main content

I am trying to run the following command

 

.\installer.cmd --values E:\SND\ifsroot\config\ifscloud-values.yaml --set action=fileexec --set dbInstaller.fileName=E:\SND\ifsroot\deliveries\build-home\database\_utils\prepare.sql  --set dbInstaller.userName=SYS --set dbInstaller.sysPassword=aaaaaaaaa --set dbInstaller.connectRole=SYSDBA

 

But ending up with an error like -

 

>Wed Dec 14 00:00:01 CET 2022] - INFO: Remote solution logFileLocation added (E:\SND\ifsroot\logs\ifscloudinstaller)
rWed Dec 14 00:00:01 CET 2022] - INFO: Remote solution configuration file found and is added (E:\SND\ifsroot\config\ifscloud-values.yaml)
rWed Dec 14 00:00:01 CET 2022] - INFO: Remote solution solution set file found and is added E:\SND\ifsroot\deliveries\build-home\ifsinstaller\solutionset.yaml)
rWed Dec 14 00:00:01 CET 2022] - INFO:
rWed Dec 14 00:00:01 CET 2022] - INFO: Running database installer, logs location: E:\SND\ifsroot\logs\ifscloudinstaller
rWed Dec 14 00:00:01 CET 2022] - INFO: Trying to connect to the database to deploy E:\SND\ifsroot\deliveries\build-home\database\_utils\prepare.sql as user sys
rWed Dec 14 00:00:03 CET 2022] - SEVERE: No connection to the database could be established (1)! Connect string jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=XX.XX.XX.XXX)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=sndpdb))) ORA-01017: invalid username/password; logon denied

 

Same time when i log in as SYS as SYSDBA through SQL PLUS it connects from the Management server and the Database server itself.

Also I have created one IFS instance already using the same management server and it was successful and while trying to check now it gives the same error.

 

Server Configuration : One Database Linux Server running on Redhat hosting 1 CDB and 2 PDBs (two different IFS Instances)

 

2 seperate middletier server respectively

 

1 Management Server to manage the two IFS Instances

 

Yaml File Used

 


helmRepo: https://ifscloud.jfrog.io/artifactory/helm/
helmUser: aaaaaaaa

helmPwd: bbbbbbbb

certificateFile: E:\SND\ifsroot\config\certs\certf_fr.pfx
certificatePassword: yyyyyyyy      
global:
  namespace: aaaasnd
  customerCode: aaaa
  environmentType: aaaasnd

  systemUrl: ifssnd.aaaa.fr
  #secondarySystemUrl:
  scale: 50

  containerRegistry: ifscloud.jfrog.io/docker/

  imageCredentials:
    registry: 
    username: aaaaa
    password: bbbbb

ifscore:
  secrets:
    jdbcUrl:
      name: ifs-jdbc-url
      data: jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=XX.XX.XX.XXX)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=sndpdb)))

  passwords: 
    ifsiamAdminPw:
      name: ifsiam-admin-pw
      data: Ifsmanager1
    ifsiamPassword:
      name: ifsiam-password
      data: Ifsmanager1
    ifssysPassword:
      name: ifssys-password
      data: Ifsmanager1
    ifsmonPassword:
      name: ifsmon-password
      data: Ifsmanager1
    busmodAadSecret:
      name: busmod-aad-secret
      data: Ifsmanager1
    ifsadminPassword:
      name: ifsadmin-pw
      data: aaaaaaaaa
    scimtextPw:
      name: scimext-pw
      data: Ifsmanager1
    ifsmtxappPassword:
      name: ifsmtxapp-password
      data: Ifsmanager1
    ifsmtxreportPassword:
      name: ifsmtxreport-password
      data: Ifsmanager1
    ifsappmonitorPw:
      name: ifsappmonitor-pw
      data: Ifsmanager1
    ifsreadonlysuppPw:
      name: ifsreadonlysupp-pw
      data: Ifsmanager1

dbInstaller:
  ifsappPassword: zzzzzzz
  sysPassword: yyyyyy
  

Hi @sumit.roy,

I’ve seen similar errors when there are special characters in the sys passwords. It’s probably worth changing the sys password to a relatively simple password without any special characters and see whether that fixes your issue. Alternatively, you can run the prepare sql using SQLPLUS and run the installer with out the sys pasword.
 

Cheers


Hi 

 

Actually it is running now with this command (22R2)

 

.\installer.cmd --values E:\SND\ifsroot\config\ifscloud-values.yaml --set action=dbinstaller --set dbInstaller.connectRole=SYSDBA

Still not able to understand why the first command didnt run. 

 

Nothing changed in any setup or configuration !


According to documentation, in you example, the password should be sent as 
--set dbInstaller.Password=aaaaaaaaa
not
--set dbInstaller.sysPassword=aaaaaaaaa

In your second example, when running action dbinstaller, the content of the delivery or build_home (depending on where installer.cmd was execute) is analyzed, and if prepare.sql exist in database\_utils folder, and if dbInstaller.sysPassword=aaaaaaaaa is sent, prepare.sql will be called run SYS/aaaaaaaaa (as SYSDBA), if the dbInstaller.sysPassword is given, otherwise the call to prepare.sql will be skipped and logged in the log as skipped


Correction to above:
According to documentation, in you example, the password should be sent as 
--set dbInstaller.password=aaaaaaaaa
not as I wrote
--set dbInstaller.Password=aaaaaaaaa
 


@stefan - thank you for your explaination.

 

So this is the thing for the second command I didnt mention the dbInstaller.sysPassword but it found the prepare.sql and then it throw an error saying SYS must me defined as SYSDBA or SYSOPER hence i had to add the addtional --set dbInstaller.connectRole=SYSDBA to make it run.

Still not clear on my side how the commands are working :(


.\installer.cmd --values E:\SND\ifsroot\config\ifscloud-values.yaml --set action=fileexec --set dbInstaller.fileName=E:\SND\ifsroot\deliveries\build-home\database\_utils\prepare.sql  --set dbInstaller.userName=SYS --set dbInstaller.password=aaaaaaaaa --set dbInstaller.connectRole=SYSDBA

The only change I have done to your example that I have changed the dbInstaller.sysPassword to dbInstaller.password. 
This is like the example in the documentation.

.\installer.cmd --values E:\SND\ifsroot\config\ifscloud-values.yaml --set action=dbinstaller --set dbInstaller.connectRole=SYSDBA
 

This will run the prepare.sql as well, because in this scenario, installer will find that sysPassword is defined in you ifscloud-values.yaml and therefor will login as SYS and execute the file.
The connectRole can be left out, because SYSDBA is the default for SYS

I hope this explains how the commands are working.


Reply