Pular para o conteúdo
Viewing 5 posts - 1 through 5 (of 5 total)
  • Author
    Posts
  • #107011
    Avatar de WenderWender
    Participant

      Boa Tarde pessoal tudo blz?
      Bom preciso de uma ajuda, recentemente fiz uma manutenção em algumas tablespace, e justamente na ultima tablespace após mover todos os segmentos para outro tablespace, ainda restaram 50 segmentos do tipo lobindex, logsegment e index na dba_segments para aquela tablespace.

      O problema que não consigo mover estes segmentos para a tablespace que foram movidos as tabelas, também não consigo encontrar a referência destes objetos para alguma tabela que tenha alguma coluna do tipo lob.

      Esta são as 5 primeiras colunas da dba_segments de dois objetos:
      owner segment_name partition_name segment_type segment_subtype
      PRODDTA SYS_IL0000093593C00006$$ null LOBINDEX ASSM
      PRODDTA SYS_IL0000093596C00005$$ null LOBINDEX ASSM

      Abraços.

      #107012
      Avatar de rmanrman
      Participant

        @Wender

        Para encontrar a referencia consulte DBA_LOBS.

        Esses segmentos me parece ser os INDEX de coluna CLOB/BLOB que são criados automaticamente.

        Para gerenciamento de tablespace eu divido da seguinte forma:

        • TABLESPACE DATA
        • TABLESPACE INDEX
        • TABLESPACE LOB

        O tratamento para segmentos do tipo LOBSEGMENT e LOBINDEX é um pouco diferente. Não dá para mantê-los em tablespace separados, como por exemplo LOBINDEX na tablespace de INDEX e LOBSEGMENT na tablespace de DATA. Por isso mantenho uma tablespace separada para LOB.

        Segue um artigo para mover os segmentos LOBSEGMENT E LOBINDEX.
        http://decipherinfosys.wordpress.com/2007/11/21/moving-lob-column-to-a-different-tablespace/

        DETALHE IMPORTANTE: Cuidado ao movimentar esse tipo de segmento, isso provoca alteração do ROWID da tabela, isso invalida os INDEXES da tabela. Após mover esses segmentos é necessário recompilar os INDEXES. Eu já vi aplicações pararem por causa de INDEX invalido.

        #107015
        Avatar de WenderWender
        Participant

          @rman

          Irei fazer o procedimento hoje a noite no DB, bom isso foi um aprendizado pois não tinha conhecimento da dba_lobs, esta era minha dificuldade de movê-los pois não sabia a referência.

          Obrigado amanha postarei se deu certo.

          #107016
          Avatar de WenderWender
          Participant

            @rman

            Boa Noite,
            Fiz o procedimento, bom foi fácil conseguir achar a coluna da tabela do tipo lob para mover na dba_lobs, realmente os índices ficaram não utilizáveis, de qualquer forma fiz o rebuild e esta tudo normal.

            Obrigado,
            Abraços.

            #107017
            Avatar de rmanrman
            Participant

              @Wender

              Segue a sintaxe do CREATE TABLE. Desta forma é possível dar nomes aos segmentos e especificar as tablespaces.


              CREATE TABLE EMAIL_ATTACHMENTS(
              ID NUMBER NOT NULL
              ,EMAIL_SENT_ID NUMBER NOT NULL
              ,ATTACHMENT CLOB NOT NULL
              ,ORDER_ATTACHMENT NUMBER NOT NULL
              )
              LOB(ATTACHMENT) STORE AS LOB_EMAIL_ATTACHMENTS_ATTACH (TABLESPACE TS_GUARD_LOB INDEX IDX_EMAIL_ATTACHMENTS_ATTACH)
              TABLESPACE TS_GUARD_DATA;

              ALTER TABLE EMAIL_ATTACHMENTS ADD CONSTRAINT PK_EMAIL_ATTACHMENTS PRIMARY KEY(ID) USING INDEX TABLESPACE TS_GUARD_IDX;

              TS_GUARD_DATA:
              * EMAIL_ATTACHMENTS = nome da TABLE

              TS_GUARD_INDEX:
              * PK_EMAIL_ATTACHMENTS = nome do INDEX

              TS_GUARD_LOB:
              * LOB_EMAIL_ATTACHMENTS_ATTACH = nome do LOBSEGMENT
              * IDX_EMAIL_ATTACHMENTS_ATTACH = nome do LOBINDEX

              Se você seguir um padrão rigoroso de nome dos segmentos fica fácil de identificar as referencias sem consultar a DBA_LOBS.

            Viewing 5 posts - 1 through 5 (of 5 total)
            • You must be logged in to reply to this topic.
            plugins premium WordPress