Recupere bases de dados IBM Db2, SAP ASE, SAP IQ e SAP MaxDB para um novo destino

As secções seguintes incluem informações sobre a recuperação de bases de dados IBM Db2, SAP ASE, SAP IQ e SAP MaxDB a partir de uma imagem de cópia de segurança completa + incremental para um novo destino.

Procedimento

Para restaurar uma imagem de cópia de segurança baseada em ficheiros para um novo destino, siga estas instruções:

  1. Na lista Aplicações do Gestor de apps, clique com o botão direito do rato na base de dados protegida e selecione Aceder.

  2. Selecione a captura instantânea mais recente para recuperar e clique em Montar.

  3. Indique um ponto de montagem na localização de montagem, por exemplo: /mymountpoint.

    A cópia de segurança da base de dados é montada em /mymountpoint e a cópia de segurança do registo é montada em /mymountpoint_archivelog.

  4. Obtenha o JobID da montagem a partir de /var/act/log/UDSAgent.log executando o seguinte comando:

    grep "mount -t " /var/act/log/UDSAgent.log | grep -w "(mountPoint provided in step 3)"|tail -1
    

    Por exemplo:

    # grep "mount -t " /var/act/log/UDSAgent.log| grep -w "/db2mnp" |tail -1
    2019-11-18 23:59:19.740 GEN-INFO 22488 Job_0404207 Spawning cmd: mount -t ext4 /dev/act403764_DBDump_1574101677612/act_staging_vol /db2mnp 2>&1
    
  5. ARCHIVELOG_MNT é igual a _archivelog. Consulte o passo três.

  6. Inicie sessão no servidor de base de dados como raiz. No servidor, altere o diretório para o seguinte:

    cd /act/custom_apps/(database type)/dump
    
  7. Execute o script a partir da linha de comandos como raiz.

  8. Desmonte a imagem de captura instantânea de despejo montada.

Script obrigatório

Antes de poder montar uma base de dados num novo destino, tem de preparar um script.

IBM Db2

  /act/custom_apps/db2/dump/ACT_DB2_dumprestore_newTarget.sh \
  SOURCE_INSTANCE=SOURCE_INSTANCE_edited_value \
  TARGET_MNT=TARGET_MNT_edited_value \
  DB_LIST=DB_LIS_edited_value \
  ARCHIVELOG_MNT=ARCHIVELOG_MNT_edited_value \
  SOURCE_LOGARCHMETH1=SOURCE_LOGARCHMETH1_edited_value \
  UNTIL_TIME=UNTIL_TIME_edited_value \
  ACT_JOBNAME=ACT_JOBNAME_edited_value

Substitua o seguinte:

  • SOURCE_INSTANCE: o nome da instância do Db2
  • TARGET_MNT: o ponto de montagem facultado durante a tarefa de montagem
  • DB_LIST: uma lista separada por vírgulas de bases de dados a restaurar
  • ARCHIVELOG_MNT: nome do ponto de montagem da cópia de segurança do registo de arquivo
  • SOURCE_LOGARCHMETH1: localização do registo de arquivo da base de dados de origem do Db2, tem de ser um disco local
  • UNTIL_TIME: tempo de recuperação no formato: AAAA-MM-DD-HH.MI.SS
  • ACT_JOBNAME: o nome da tarefa da tarefa de montagem padrão
  • Ligue-se à instância do Db2 e confirme que as bases de dados foram recuperadas e estão online.

      db2 connect to <dbname>
      db2 select db_status FROM SYSIBMADM.SNAPDB
    

    SAP ASE

      /act/custom_apps/sybase/dump/ACT_SYBASE_dumprestore_newTarget.sh
      SYBOSUSER
      SRC_SYBASE_SQLD
      TARGET_DB_USER
      TARGET_DBUSER_PASSWD
      ACT_NAME
      TARGET_MNT_PNT
      SRC_DBNAME
      UNTIL_TIME
      BEGIN_TIME
      LOG_BKP_MNTPT
      SRC_PAGE_SIZE
    

    Estabeleça ligação à instância do SAP ASE e confirme que as bases de dados foram recuperadas e estão online.

        isql -U<username> -P<password> -S<SAP ASE server name>
        sp_helpdb
        go
    

    SAP IQ

      /act/custom_apps/sybase/dump/ACT_SYBASE_dumprestore_newTarget.sh
      OSUSER
      TARGET_MNT
      SRC_DB_DBA_USER
      SRC_DB_DBA_PWD
      SYBIQ_HOME
      VERSION
      ACT_NAME
      CATALOG_DB_FILE
      LOG_BKP_MNTPT
    

    Estabeleça ligação à base de dados do IQ e confirme que as bases de dados foram recuperadas e estão online.

        dbisql -c "uid=<username>;pwd=<password>;eng=<engine name>;dbn=<database name>;" -nogui
    

    SAP MaxDB

      /act/custom_apps/maxdb/dump/ACT_Maxdb_dumpRestore_newTarget.conf
      OSUSER
      SRC_DBSID
      TARGET_DB_USER
      TARGET_DBUSER_PASSWD
      TARGET_SERVER_NAME
      DUMPBKPLOC
      DBADMIN_PWD
      UNTIL_TIME
      LOG_MNT_PNT
      DATA_MNT_PNT
      JobID
      MANIFEST_FILE_LOC
      LOG_BKP_MNTPT
      BEGIN_TIME
      SRC_DB_VERSION
    

    Pode obter estes valores executando os seguintes comandos:

    • DUMPBKPLOC:

      df -h | grep <DUMPBKPLOC> | awk '{print $NF}'
      cat /var/act/log/UDSAgent.log | grep -w <DUMPBKPLOC> | tail -1 | cut -d']' -f2 | cut -d' ' -f2
      
    • JobID:

      cat /var/act/log/UDSAgent.log | grep <JOBID> | awk -F"disk at " '{print $2}'
      
    • MANIFEST_FILE_LOC:

      cat /var/act/log/UDSAgent.log | grep -i "Manifest_File_" | awk -F"disk at " '{print $2}'
      
    • LOG_BKP_MNTPT:

      df -h | grep "_archivelog" | awk '{print $NF}'
      
    • BEGIN_TIME:

      cat /var/act/log/UDSAgent.log | grep "BEGIN_TIME" | awk -F"BEGIN_TIME=" '{ print $2 }' | cut -d' ' -f1-2 | cut -d'"' -f2
      
    • SRC_DB_VERSION:

      dbmcli -d <SRC_DBSID> dbm_version | grep "VERSION" | awk -F"= " '{print $2}'
      

    Estabeleça ligação à instância do MaxDB e confirme que as bases de dados foram recuperadas e estão online:

        dbmcli -d <TARGET_SERVER_NAME> -u
        <TARGET_DB_USER>,<TARGET_DBUSER_PASSWD>
        db_state