ALTER table move lob segment of a partition

How I could move a LOB from a table segment partitioned (11.1 DB)?

I have after the table script:
CREATE TABLE COMMON.TEST_AAA2_ARH
(
  ID           INTEGER,
  TEKST        VARCHAR2(200 CHAR),
  UPDATESTAMP  DATE,
  OBJEKAT      CLOB
)
LOB (OBJEKAT) STORE AS (
  TABLESPACE COMMON_ARCHIVE
  ENABLE       STORAGE IN ROW
  CHUNK       8192
  RETENTION
  NOCACHE
  LOGGING)
TABLESPACE COMMON_ARCHIVE
LOGGING
PARTITION BY RANGE (UPDATESTAMP)
(  
  PARTITION P_201012 VALUES LESS THAN (TO_DATE(' 2011-01-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
    LOGGING
    NOCOMPRESS 
    TABLESPACE COMMON_DATA
    LOB (OBJEKAT) STORE AS (
      TABLESPACE USERS
      ENABLE       STORAGE IN ROW
      CHUNK       8192
      PCTVERSION  10
      NOCACHE
      LOGGING),  
  PARTITION P_201101 VALUES LESS THAN (TO_DATE(' 2011-02-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
    LOGGING
    NOCOMPRESS 
    TABLESPACE COMMON_DATA
    LOB (OBJEKAT) STORE AS (
      TABLESPACE USERS
      ENABLE       STORAGE IN ROW
      CHUNK       8192
      PCTVERSION  10
      NOCACHE
      LOGGING),  
  PARTITION P_MAXVALUE VALUES LESS THAN (MAXVALUE)
    LOGGING
    NOCOMPRESS 
    TABLESPACE COMMON_ARCHIVE
    LOB (OBJEKAT) STORE AS (
      TABLESPACE COMMON_ARCHIVE
      ENABLE       STORAGE IN ROW
      CHUNK       8192
      PCTVERSION  10
      NOCACHE
      LOGGING)
)
NOCOMPRESS 
NOCACHE
NOPARALLEL
MONITORING;
and I would switch USERS tablespace lob segment to the other...

TNX

ALTER table move partition lob () store as (tablespace )

SQL> CREATE TABLE WISSEM.TEST_AAA2_ARH
(
  ID           INTEGER,
  TEKST        VARCHAR2(200 CHAR),
  UPDATESTAMP  DATE,
  OBJEKAT      CLOB
)
LOB (OBJEKAT) STORE AS (
  TABLESPACE EXAMPLE
  ENABLE       STORAGE IN ROW
  CHUNK       8192
  RETENTION
  NOCACHE
  LOGGING)
TABLESPACE EXAMPLE
LOGGING
PARTITION BY RANGE (UPDATESTAMP)
(
  PARTITION P_201012 VALUES LESS THAN (TO_DATE(' 2011-01-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
    LOGGING
    NOCOMPRESS
    TABLESPACE EXAMPLE
    LOB (OBJEKAT) STORE AS (
      TABLESPACE USERS
      ENABLE       STORAGE IN ROW
      CHUNK       8192
      PCTVERSION  10
      NOCACHE
      LOGGING),
  PARTITION P_201101 VALUES LESS THAN (TO_DATE(' 2011-02-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
    LOGGING
    NOCOMPRESS
    TABLESPACE EXAMPLE
    LOB (OBJEKAT) STORE AS (
      TABLESPACE USERS
      ENABLE       STORAGE IN ROW
      CHUNK       8192
      PCTVERSION  10
      NOCACHE
      LOGGING),
  PARTITION P_MAXVALUE VALUES LESS THAN (MAXVALUE)
    LOGGING
    NOCOMPRESS
    TABLESPACE EXAMPLE
    LOB (OBJEKAT) STORE AS (
      TABLESPACE EXAMPLE
      ENABLE       STORAGE IN ROW
      CHUNK       8192
      PCTVERSION  10
      NOCACHE
      LOGGING)
)
NOCOMPRESS
NOCACHE
NOPARALLEL
MONITORING;
  2    3    4    5    6    7    8    9   10   11   12   13   14   15   16   17   18   19   20   21   22   23   24   25   26   27   28   29   30   31   32   33   34   35   36   37   38   39   40   41   42   43   44   45   46   47   48   49   50   51   52   53   54   55   56
Table created.

SQL> ALTER TABLE WISSEM.TEST_AAA2_ARH MOVE LOB (OBJEKAT) STORE AS (TABLESPACE USERS);
ALTER TABLE WISSEM.TEST_AAA2_ARH MOVE LOB (OBJEKAT) STORE AS (TABLESPACE USERS)
                   *
ERROR at line 1:
ORA-14511: cannot perform operation on a partitioned object

SQL> ALTER TABLE WISSEM.TEST_AAA2_ARH MOVE PARTITION P_201101 LOB (OBJEKAT) STORE AS (TABLESPACE USERS);

Table altered.

SQL> 

Published by: orawiss on May 5, 2011 14:03

Tags: Database

Similar Questions

  • How to move the lob segment in a partitioned table

    My Oracle 11.2, I have a partitioned table that I want to switch to a different tablespace

    After invoking the script, there are still inside for the insensitive lob segment table
    CREATE TABLE BONGO.AAA_3
    (
      ID       NUMBER,
      DATUM    DATE,
      OBJEKAT  BLOB
    )
    TABLESPACE BONGODATA_HUGE
    PCTUSED    40
    PCTFREE    10
    INITRANS   1
    MAXTRANS   255
    LOGGING
    PARTITION BY RANGE (DATUM)
    (  
      PARTITION P_MAXVALUE VALUES LESS THAN (MAXVALUE)
        LOGGING
        NOCOMPRESS
        TABLESPACE BONGODATA_HUGE
    LOB (OBJEKAT) STORE AS 
            (   TABLESPACE  BONGODATA 
              ENABLE        STORAGE IN ROW
              CHUNK       8192
              RETENTION
              NOCACHE
              STORAGE    (
                          INITIAL          64K
                          NEXT             1M
                          MINEXTENTS       1
                          MAXEXTENTS       UNLIMITED
                          PCTINCREASE      0
                          FREELISTS        1
                          FREELIST GROUPS  1
                          BUFFER_POOL      DEFAULT
                         )
            )
        PCTUSED    40
        PCTFREE    10
        INITRANS   1
        MAXTRANS   255
        STORAGE    (
                    INITIAL          64K
                    NEXT             1M
                    MINEXTENTS       1
                    MAXEXTENTS       UNLIMITED
                    FREELISTS        1
                    FREELIST GROUPS  1
                    BUFFER_POOL      DEFAULT
                   )
    )
    NOCOMPRESS 
    NOCACHE
    NOPARALLEL
    MONITORING;
    How to move this lob segment in a partitioned table?

    or, is there a package for data move in storage?

    concerning

    ALTER TABLE current_table MOVE PARTITION nom_partition
    TABLESPACE destination_table_space
    LOB (column_name) STORE AS (TABLESPACE current_tablespace);

  • ALTER table move online in an encrypted tablespace

    Hello

    Our DBA want to put all our data in encrypted storage.

    Once they create encrypted tablespaces, we will have to do «alter table move online...» "orders for encrypted storage space around the tables.

    Has anyone here done already?   Keeps the table moved really 'on-line' (available at query/insert/update) during the move?  Or will we have to wait some time stop/downtime while the tables are moved?
    What about the tables with long or CRAFT?

    Thank you!

    KSandberg and to add to the recall of John that only ITO tables can be moved online, if the table needs to be moved offline the indexes would be invalid until rebuilt.  If the table is an IOT I suggest you rebuild the index online after the move because even if the indexes are always used the logical ROWID is more pointing to the correct location and access of the index will be less effective that will you rebuild the index.

    - -

    The dbms_redefinition package could be an alternative solution if you need to move the tables no - ITO online.

    - -

    HTH - Mark D Powell.

  • ALTER table move & shrink space

    Hello
    What is the difference between alter table move and alter table shrink space orders
    Two free blocks not used in the table so that the free space will be given to the tablespace. Can you explain mw in detail or provide some links

    Sekar_BLUE4EVER wrote:
    Hello
    What is the difference between alter table move and alter table shrink space orders
    Two free blocks not used in the table so that the free space will be given to the tablespace. Can you explain mw in detail or provide some links

    ALTER table move would make invalid indexes and would require so rebuild you the index. In addition to him, it requires extra space in the tablespace, even that would be used for the creation of the object in double. So if you have a table of 10 GB, you need additional 10 GB free todo table alter move. Whereas in the narrowing is a place, the online operation, does not make you go and rebuild the index because it doesn't make them not disabled, requires no additional space to have.

    HTH
    Aman...

  • in what version of oracle alter table move tablespace introduce

    Hello

    Can you please provide me with information to present including oracle realease oracle alter table move tablespace nom_tablespace; ...

    Thank you

    Actully had this... that first of all we create a table using DEC and then delete the old table and then re-create the table with the original name, this way we'll finally have table > with the same name and data.

    But he has disadvantanges that
    (1) there is no index, we recreate.
    (2) no constraint, we need to redefine tht.

    Please confirm to me... I am right or wrong here...

    Thanks a lot for your answers anantha all the... It's my last request... Please respond

    To avoid TELL-benefits mentioned above,

    -Export the table or the diagram.
    (create two discharges of export.
    1. with the owner or table with index = n lines = n - This will export all the objects without indexes, and lines. In other words, the metadata will be exported with regard to a table or schema.
    2. with the owner, or a table with index = lines y = y - this will export all the objects from a table or schema.

    -Remove the table
    -Recreate the Table (using export generated from option 1 above)
    -Import the data without indexes and constraints are imported. (use of export generated from option 2 mentioned above. use ignore = y,)
    constraints and indexes = n = n here.)
    -Import(re-Create) indexes and enable constraints (using export produced option 2 rows = n ignore = y)

    See the Oracle 7 here documentation

    -André

  • ALTER table move partition in parallel

    Hello

    I wish that this command must be run in parallel. is this possible?

    ALTER TABLE xyz PARTITION MOVE xyz_p0608 TABLESPACE q208_ts

    Thank you
    parallel_clause
    
    Purpose
    
    The parallel_clause lets you parallelize the creation of a database object and set the default degree of parallelism for subsequent queries of and DML operations on the object.
    
    You can specify the parallel_clause in the following statements:
    
        * CREATE TABLE: to set parallelism for the table (see CREATE TABLE).
        * ALTER TABLE (see ALTER TABLE):
              o To change parallelism for the table
              o To parallelize the operations of adding, coalescing, exchanging, merging, splitting, truncating, dropping, or moving a table partition
    

    To parallelize append operations, coalescence, Exchange, merger, splitting, truncate, delete or move a partition table

  • How to move a segment in the SYSAUX tablespace data file

    Hello

    I had a problem with my tablespace SYSAUX growing due to the history of Stats being not properly purged (lots of hits and articles against this known issue). I have since corrected this problem and I did my SYSAUX tablespace so that it is now less than 3 GB. However, the data file unique original behind this tablespace is still 10 GB and I want to reduce again to below 6 GB.

    However as a suspect when I try to reduce the data return file I get ORA-03297 file contains data beyond the requested value of RESIZING.

    I checked the table dba_extents for this tablespace, which reveals there are approximately 765 segments over my desired fix of 6 GB.

    Q1. If there is only 1 or 2 segments above this mark of 6 GB, how would manually move their bottom?

    Q2. I gave have 765 segments above this 6 GB brand, what are the recommendations to achieve the mass movement required of these segments?

    Thank you
    Jim

    The Alter Table or Alter Index statement will pass all these types of segment?

    Lol some are special items.

    Here is what I make sure you test something you care to.

    And the double test. Frankly, I would like to change the least possible and if I didn't do it, I would avoid.
    It might be easily really much, much more trouble than its worth.

    LOBINDEX

    ALTER table move lob () store (tablespace );

    NESTED TABLE

    A nested table can be moved to a different tablespace only by moving his table containing storage target.
    (Move the parent table, which is only necessary.)

    PARTITON TABLE

    ALTER partitioned table move partition part_2 tablespace ;

    LOB SEGMENT

    ALTER TABLE owner.table_name MOVE LOB (column_name) STORE AS (nom_tablespace);

    CLUSTER

    I'm not sure.

    INDEX PARTITION

    example of

    ALTER INDEX SYS. I_STREAMS_APPLY_SPILL_MSGS_PT1 CHANGE DEFAULT USERS TABLESPACE ATTRIBUTES;

    PARTITION OF LOB

    ALTER table

    partition of moving lob () store as (tablespace );

    See also - online redefinition of tables

    http://Oracle.Su/docs/11g/server.112/e10595/tables007.htm

    Oracle Database 10 g Release 2 online data reorganization & redefinition

    http://www.Oracle.com/technetwork/database/features/availability/HA-10gR2-online-reorg-TWP-131644.PDF

    http://jhdba.WordPress.com/2009/05/19/purging-statistics-from-the-SYSAUX-tablespace/

    Best regards

    mseberg

  • Movement of the LOB Segment

    I am trying to write a PL/SQL procedure that will move all my lob segments in a tablespace again (this is for when a dev environment is created... lots of storage & compaction of the things endure us in the production takes place then!)

    I know that the SQL is:
    alter table X move lob (name-of-lob) store as tablespace NEWTBS;
    But I want to build these declarations programmatically by querying views user_ or all_. I don't know where to start. If I look in WHERE USER_SEGMENTS, I see segments with names like SYS_LOB0000048001C00017$ $... but I don't know what the table in order to begin to construct the statement "alter table...". ». (In other words, I think I reason that the command ' alter table SYS_LOB0000048001C00017$ $ move lob... ") ("wouldn't be correct).

    Similarly, the SQL will require me to know the name of the lob, I think, and that should be the name of the column in the table. But what view will allow me to extract this information, so I can complete my little building SQL?

    Can someone point me in the right direction please?

    Oh, and also: in WHERE USER_SEGMENTS, I see that I have «LOBSEGMENT "and types of segment"LOBINDEX"... assuming that the above SQL moves lob segments, how can I move the index business?»

    I think that you are looking for the table USER_LOBS (or ALL_LOBS or DBA_LOBS). Who has the TABLE_NAME, COLUMN_NAME and nom_segment. So I expect that you are looking for something like (not tested)

    FOR x IN (SELECT * FROM user_lobs)
    LOOP
      EXECUTE IMMEDIATE
          'ALTER TABLE ' ||
            x.table_name ||
            ' MOVE LOB (' ||
            x.segment_name ||
            ') STORE AS TABLESPACE newtbs';
    END LOOP;
    

    Justin

    Published by: Justin Cave on October 7, 2009 12:03 AM

    Fixed formatting

  • Truncate table removes the corresponding LOB segment of the table or not?

    Hi all

    I have little table with BUSINESS segments, if I pull the table truncated on the table it will purge the LOB segment as well?

    About how long will take to truncate 100 GB LOB segments.

    Thank you

    903787 wrote:
    Hello

    1 Truncate will delete the LOB segment or not?

    It will not erase the LOB segments, but it must release the majority of the allocated space.

    >

    2. If you want to recover the space, we need to run the command, below is correct?

    ALTER TABLE CHANGE LOB (LOB_COLUMN) (SHRINK SPACE);

    Should not be necessary to 11.2:

    SQL> select * from v$version;
    
    BANNER
    --------------------------------------------------------------------------------
    Oracle Database 11g Express Edition Release 11.2.0.2.0 - Production
    PL/SQL Release 11.2.0.2.0 - Production
    CORE    11.2.0.2.0      Production
    TNS for 32-bit Windows: Version 11.2.0.2.0 - Production
    NLSRTL Version 11.2.0.2.0 - Production
    
    SQL> select count(*) from user_segments;
    
      COUNT(*)
    ----------
             0
    
    SQL>
    SQL> create table t(x clob);
    
    Table created.
    
    SQL> select segment_name, segment_type, bytes
      2  from user_segments;
    
    SEGMENT_NAME                             SEGMENT_TYPE            BYTES
    ---------------------------------------- ------------------ ----------
    T                                        TABLE                   65536
    SYS_IL0000030908C00001$$                 LOBINDEX                65536
    SYS_LOB0000030908C00001$$                LOBSEGMENT              65536
    
    SQL>
    SQL> insert into t select lpad(segment_name,8192) from dba_segments;
    
    6312 rows created.
    
    SQL> commit;
    
    Commit complete.
    
    SQL>
    SQL> select segment_name, segment_type, bytes
      2  from user_segments;
    
    SEGMENT_NAME                             SEGMENT_TYPE            BYTES
    ---------------------------------------- ------------------ ----------
    T                                        TABLE                  393216
    SYS_IL0000030908C00001$$                 LOBINDEX                65536
    SYS_LOB0000030908C00001$$                LOBSEGMENT           53477376
    
    SQL>
    SQL> truncate table t;
    
    Table truncated.
    
    SQL>
    SQL> select segment_name, segment_type, bytes
      2  from user_segments;
    
    SEGMENT_NAME                             SEGMENT_TYPE            BYTES
    ---------------------------------------- ------------------ ----------
    T                                        TABLE                   65536
    SYS_IL0000030908C00001$$                 LOBINDEX                65536
    SYS_LOB0000030908C00001$$                LOBSEGMENT              65536
    
    SQL>
    SQL> alter table t modify lob(x) (shrink space);
    
    Table altered.
    
    SQL>
    SQL> select segment_name, segment_type, bytes
      2  from user_segments;
    
    SEGMENT_NAME                             SEGMENT_TYPE            BYTES
    ---------------------------------------- ------------------ ----------
    T                                        TABLE                   65536
    SYS_IL0000030908C00001$$                 LOBINDEX                65536
    SYS_LOB0000030908C00001$$                LOBSEGMENT              65536
    
    SQL>
    
  • Displacement of the LOB segments.

    Is there a a way to move LOB segment, keeping the segment of the table? The statement:

    ALTER table < tab > move lob (< lob >) store as (tablespace < TBS >)

    moves not only the LOB segment, but also table segments, so consumes a lot of resources, needs to rebuild indexes etc.

    Thank you.

    If you move the lob segment, then the data of the line must change because the lob is in a different place. There is no way around that. The row stores a pointer to LOB. Oracle has decided to implement this in a way that makes all change of rowid (you can't influence that).

    So, as I said - it's life.

  • Calculate the free space of the lob segment / reclaim space?

    Friends...

    DB: 11 GR 2

    OS: Linux

    I am trying shrink lob segment and recover the free space between the business segments.

    This area in Oracle DB is new to me so try to learn and to shrink the segment.

    I went through various metalink doco (386341.1) but not be able to get answers for below...

    Issues related to the:

    1. how much free space is available in the lob segment?

    2 can I assume 'no LOB DATA' as the free space currently and even will be recovered once the segment will be shrunk?

    3. no disadvantage of using "ALTER TABLE... SHRINK SPACE.

    4. is it true if storage segment is 100 GB as many redo will be generated when trying to alter table... shrink the space?

    I'm following the steps below.

    1 find Segment name-> sys_lob123

    2. find the size of storage - > 100 GB

    3. find the size of the LOB data-> 70

    4. find the size of the data not LOB-> 30

    2. the storage size

    Select 'storage' from dba_extents bytes

    where nom_segment = 'sys_lob123. '

    100 GB

    3. the size of the LOB

    Select dbms_lob.getlength (col_lob) in the table_lob;

    70 GB

    4. the size of the LOB data not

    100-70 = 30 GB (i.e. #3 - #2)

    Thanks in advance and enjoy your time looking into this...

    Use DBMS_REDEFINITION to reorganize the LOB segment, it is the best way to retrieve a LOB segment space. Also use the clause "MEANS of COMPRESS" and SECURE LEADER, creating the temp table. There is no reason that you can use the BASIC FILE. It's online process, which means that your app can stay up to... However, make sure that monitor you the database when executing redef, as it can cause conflicts and slow down your application, in which case you must kill the reorg...

    If this process is not feasible or overwhelms you, "ALTER TABLE MOVE" is another option.

    With 'Displacement of Alter table', you need to rebuild all indexes after you move the LOB segment. Don't forget this is an offline process and your application needs a time out while you do this.

    Here is the query to list the 10 LOBs albums in your database-

    fixed line 160

    Col a20 PROPRIETARY format

    Col TABLE_NAME format a30

    Col COLUMN_NAME format a30

    Col nom_segment format a30

    size col 999 999 999 format

    SELECT *.

    FROM (SELECT b.owner,

    b.table_name,

    b.column_name,

    a.segment_name,

    SUM (a.bytes) / (1024 * 1024) "size".

    FROM dba_segments a, b dba_lobs

    WHERE a.segment_name LIKE '% SYS_LOB '.

    AND a.segment_name = b.segment_name

    AND a.owner NOT IN ('SYS', 'SYSTEM', 'GENERAL', "OUTLN")

    B.owner GROUP,

    b.table_name,

    b.column_name,

    a.segment_name

    ORDER BY DESC 5)

    WHERE ROWNUM<>

  • Partitioned table of LOB - àen SECUREFILE?

    Dear administrators,

    My version of DB - 11.1.0.7

    I need to convert storage LOB in BASIC NAVIGATION (and also to enable compression Adv LOB) on a partitioned table (Hash, 64 partitions). Table of the LOB chunk size size - 8 GB, segment - 1.2 to

    I am familiar with dbms_redef for these conversions on non partitioned tables. I know too, redefine a LOB table partitions. But is there a way to achieve BASIC SECUREFILE conversion on a table partitioned using the DBMS_REDEF?

    I have not found much info on this on oracle docs or other sources on the internet. Nobody don't know or don't know of this process? Thanks for your help.

    Post edited by: DBA112

    orclz > create table lobtab store (c2 c1 and number, clob) lob (c2) as partition by hash (c1) partitions 4 basicfile;

    Table created.

    orclz > create table inttab store (c2 c1 and number, clob) lob (c2) as securefile partition by hash (c1) partitions 4;

    Table created.

    orclz > alter table lobtab add constraint primary key lpk (c1);

    Modified table.

    orclz > insert into lobtab values(1,'abc');

    1 line of creation.

    orclz > dbms_redefinition.start_redef_table (user, 'lobtab', 'inttab') exec.

    PL/SQL procedure successfully completed.

    orclz > dbms_redefinition.finish_redef_table (user, 'lobtab', 'inttab') exec.

    PL/SQL procedure successfully completed.

    orclz >

  • move the lob segment fails with invalid identifier

    Why this fails:

    SQL > desc APPLSYS. WF_INBOUND_TABLE
    Name Null? Type
    ----------------------------------------- -------- ----------------------------
    Q_NAME VARCHAR2 (30)
    MSGID NOT NULL RAW (16)
    CORRID'ART VARCHAR2 (128)
    PRIORITY NUMBER
    NUMBER OF THE STATE
    TIMESTAMP DELAY (6)
    NUMBER OF EXPIRY
    TIME_MANAGER_INFO TIMESTAMP (6)
    NUMBER OF LOCAL_ORDER_NO
    NUMBER OF CHAIN_NO
    NUMBER OF THE CSCN
    DSCN NUMBER
    ENQ_TIME TIMESTAMP (6)
    NUMBER OF ENQ_UID
    ENQ_TID VARCHAR2 (30)
    DEQ_TIME TIMESTAMP (6)
    NUMBER OF DEQ_UID
    DEQ_TID VARCHAR2 (30)
    NUMBER OF RETRY_COUNT
    EXCEPTION_QSCHEMA VARCHAR2 (30)
    EXCEPTION_QUEUE VARCHAR2 (30)
    NUMBER OF STEP_NO
    NUMBER OF RECIPIENT_KEY
    DEQUEUE_MSGID RAW (16)
    USER_DATA SYSTEM. WF_PAYLOAD_T
    SENDER_NAME VARCHAR2 (30)
    SENDER_ADDRESS VARCHAR2 (1024)
    NUMBER OF SENDER_PROTOCOL
    ANYDATA USER_PROP


    SQL > alter table APPLSYS. WF_INBOUND_TABLE move TABLESPACE APPS_TS_TX_DATA;

    Modified table.

    SQL > ALTER TABLE APPLSYS. WF_INBOUND_TABLE MOVE LOB (USER_PROP) STORE DID (TABLESPACE APPS_TS_TX_DATA);
    *
    ERROR on line 1:
    ORA-00904: "USER_PROP": invalid identifier

    user600570 wrote:
    Well, no matter what the type is be, how to move to this segment?

    The segment does not move when the corresponding table is moved to new tablespace?
    At least that's what I see.

    SQL> select * from v$version ;
    
    BANNER
    ----------------------------------------------------------------
    Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bi
    PL/SQL Release 10.2.0.4.0 - Production
    CORE     10.2.0.4.0     Production
    TNS for Solaris: Version 10.2.0.4.0 - Production
    NLSRTL Version 10.2.0.4.0 - Production
    
    SQL> create table t nologging as select * from applsys.wf_inbound_table where 1 = 2 ;
    
    Table created.
    
    SQL> select dbms_metadata.get_ddl('TABLE','T') from dual ;
    
    DBMS_METADATA.GET_DDL('TABLE','T')
    --------------------------------------------------------------------------------
    
      CREATE TABLE "APPS"."T"
       (     "Q_NAME" VARCHAR2(30),
         "MSGID" RAW(16),
         "CORRID" VARCHAR2(128),
         "PRIORITY" NUMBER,
         "STATE" NUMBER,
         "DELAY" TIMESTAMP (6),
         "EXPIRATION" NUMBER,
         "TIME_MANAGER_INFO" TIMESTAMP (6),
         "LOCAL_ORDER_NO" NUMBER,
         "CHAIN_NO" NUMBER,
         "CSCN" NUMBER,
         "DSCN" NUMBER,
         "ENQ_TIME" TIMESTAMP (6),
         "ENQ_UID" NUMBER,
         "ENQ_TID" VARCHAR2(30),
         "DEQ_TIME" TIMESTAMP (6),
         "DEQ_UID" NUMBER,
         "DEQ_TID" VARCHAR2(30),
         "RETRY_COUNT" NUMBER,
         "EXCEPTION_QSCHEMA" VARCHAR2(30),
         "EXCEPTION_QUEUE" VARCHAR2(30),
         "STEP_NO" NUMBER,
         "RECIPIENT_KEY" NUMBER,
         "DEQUEUE_MSGID" RAW(16),
         "USER_DATA" "SYSTEM"."WF_PAYLOAD_T" ,
         "SENDER_NAME" VARCHAR2(30),
         "SENDER_ADDRESS" VARCHAR2(1024),
         "SENDER_PROTOCOL" NUMBER,
         "USER_PROP" "SYS"."ANYDATA"
       ) PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS NOLOGGING
      STORAGE(INITIAL 40960 NEXT 40960 MINEXTENTS 1 MAXEXTENTS 505
      PCTINCREASE 50 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT)
      TABLESPACE "APPLSYSD"
     OPAQUE TYPE "USER_PROP" STORE AS LOB (
      ENABLE STORAGE IN ROW CHUNK 8192 PCTVERSION 10
      CACHE
      STORAGE(INITIAL 40960 NEXT 40960 MINEXTENTS 1 MAXEXTENTS 505
      PCTINCREASE 50 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT))
    
    SQL> select owner, table_name, column_name, segment_name, tablespace_name from dba_lobs
      2  where table_name = 'T' ;
    
    OWNER                          TABLE_NAME
    ------------------------------ ------------------------------
    COLUMN_NAME
    -----------------------------------------------------------------------------------------------------------------------------------
    SEGMENT_NAME                   TABLESPACE_NAME
    ------------------------------ ------------------------------
    APPS                           T
    USER_PROP
    SYS_LOB0000365381C00035$$      APPLSYSD
    
    SQL> alter table t move tablespace APPLSYSX ;
    
    Table altered.
    
    SQL> select dbms_metadata.get_ddl('TABLE','T') from dual ;
    
    DBMS_METADATA.GET_DDL('TABLE','T')
    --------------------------------------------------------------------------------
    
      CREATE TABLE "APPS"."T"
       (     "Q_NAME" VARCHAR2(30),
         "MSGID" RAW(16),
         "CORRID" VARCHAR2(128),
         "PRIORITY" NUMBER,
         "STATE" NUMBER,
         "DELAY" TIMESTAMP (6),
         "EXPIRATION" NUMBER,
         "TIME_MANAGER_INFO" TIMESTAMP (6),
         "LOCAL_ORDER_NO" NUMBER,
         "CHAIN_NO" NUMBER,
         "CSCN" NUMBER,
         "DSCN" NUMBER,
         "ENQ_TIME" TIMESTAMP (6),
         "ENQ_UID" NUMBER,
         "ENQ_TID" VARCHAR2(30),
         "DEQ_TIME" TIMESTAMP (6),
         "DEQ_UID" NUMBER,
         "DEQ_TID" VARCHAR2(30),
         "RETRY_COUNT" NUMBER,
         "EXCEPTION_QSCHEMA" VARCHAR2(30),
         "EXCEPTION_QUEUE" VARCHAR2(30),
         "STEP_NO" NUMBER,
         "RECIPIENT_KEY" NUMBER,
         "DEQUEUE_MSGID" RAW(16),
         "USER_DATA" "SYSTEM"."WF_PAYLOAD_T" ,
         "SENDER_NAME" VARCHAR2(30),
         "SENDER_ADDRESS" VARCHAR2(1024),
         "SENDER_PROTOCOL" NUMBER,
         "USER_PROP" "SYS"."ANYDATA"
       ) PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS NOLOGGING
      STORAGE(INITIAL 40960 NEXT 40960 MINEXTENTS 1 MAXEXTENTS 505
      PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT)
      TABLESPACE "APPLSYSX"
     OPAQUE TYPE "USER_PROP" STORE AS LOB (
      ENABLE STORAGE IN ROW CHUNK 8192 PCTVERSION 10
      CACHE
      STORAGE(INITIAL 40960 NEXT 40960 MINEXTENTS 1 MAXEXTENTS 505
      PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT))
    
    SQL> select owner, table_name, column_name, segment_name, tablespace_name from dba_lobs
      2  where table_name = 'T' ;
    
    OWNER                          TABLE_NAME
    ------------------------------ ------------------------------
    COLUMN_NAME
    -----------------------------------------------------------------------------------------------------------------------------------
    SEGMENT_NAME                   TABLESPACE_NAME
    ------------------------------ ------------------------------
    APPS                           T
    USER_PROP
    SYS_LOB0000365381C00035$$      APPLSYSX
    
    SQL> drop table t purge ;
    
    Table dropped.
    

    If you want to be able to move the segment to a different tablespace to the table, I guess that's not possible. Oracle only allows LOB to be stored in a separate tablespace as the corresponding table provided that they are defined as the LOBs explicitly during the creation of the table, unlike the LOB created by oracle internally because of the column datatype being ANYDATA as in this case.

  • Move the partition of the table and get ORA-14006: invalid partition name

    I'm using oracle 11.2.0.4 and I am trying to move a partitioned table to one tablespace to another.  I checked may times and I have the correct table name and the name of the partition.  However, I get the error ora-14006.

    Can see everything what could be the problem?

    SQL > ALTER TABLE GWPROD. QRY_TES_ROLLINGCUREDITS MOVE PARTITION 201112 TABLESPACE GW_PROD_T2 PARALLEL (DEGREE 4) NOLOGGING;

    ALTER TABLE GWPROD. QRY_TES_ROLLINGCUREDITS MOVE PARTITION TABLESPACE GW_PROD_T2 PARALLEL (DEGREE 4) NOLOGGING 201112

    *

    ERROR on line 1:

    ORA-14006: invalid partition name

    Thanks in advance.

    Names that begin with numbers are not legal partition names. A fool created by placing them between double quotes. You will need to do the same.

  • Move the data from the partitions again tablespace - direct table filled by ETL

    Hello

    We have a large composite table date-range/hash partitioned table (using time partitioning 11.2.0.3 range)

    1 partition for each month and each such partition 4 under separate partitions.

    We want to move some data from most significant storage but also direct table and inserted in all the days as part of the data warehouse and large table want to ensure

    operations below result in errors in the data loading procedure

    Suppose also should not take long to run lines 40 million or more each month.

    Select *.

    Of user_tab_partitions

    Where table_name = 'CUSTOMER_TRANSACTION '.

    And nom_partition like 'SYS % '.

    1. (1) Alter table retailer_transaction and rename partition < nom_partition > CUST_PART_ < YYYYMM >

    1. (2) tablespace create dedicated for the month of the affected partition

    1. ((3) alter table retailer_transaction move tablespace subpartition < sys... > < partition_tablespace > created in 2) above

    ALTER table retailer_transaction change the default attributes for the partition < CUST_PART < YYYYMM > < tablespace in 2 above > tablespace)

    4 global index which would eventually rebuild afterwards due to the transition if movement makes no valid.

    Several local bitmap indexes that belong to partitions.

    Thoughts?

    Thank you

    I agree in a good store of data, everything should be according to the best practices ETL or guideline. I guess it is a FACT table, because it's big enough. A method that I can share (followed in the real world big DW) is "ELP" IE Partition Exchange loading. You can find the basic architecture of the Internet.

    The basic architecture is as

    The source (in your case partitioned) Table--> (unpartitioned) intermediate Table--> Table possible target (partitioned)--> the cleaning activities (and overtime).

    You can use any ETL tool for this (I won't mention any other reasons).

    Later, you can delete the original table and use that new table as your FACT table, your application will be available all the time. There are drawbacks as most uses of double-spaced, other than normal ETL these work will take certain amount of resources so that other ALS etc. In addition, if you load a few current days during these activities you plan / program accordingly.

    Your demo is also fine, but regular ETL may fail because you rename the partitions (some uses of ETL tool partition name, in case you ever ELP) also unusable global indexes can cause failure (you have local too?).

Maybe you are looking for

  • Sometimes, my Mac is unable to find other devices on my Wi - Fi

    Sometimes and for periods of time, my MacBook does not all devices on my Wi - Fi with the exception of the Time Capsule and himself. When he arrives, he can't see the Time Capsule and himself. So continues Internet connection, but I can no longer con

  • T60 does not recognize xp disc in the cd drive

    What could cause this? Trying to install XP from the CD including defective HD have been replaced. BIOS recognize the new drive to HD & CD, but then error 'no valid OS found. By Lenovo Article here I've disabled dual mode for cpu & have the CD-ROM dr

  • Non-genuine window

    Window used for 2 years and a half window then simply update, now system say this not genuine window?

  • BlackBerry Smartphones helps a rookie please

    I have a tools user disk with my curve which does not on my pc (Vista).  I tried to download the appropriate program in the downloads section, but it does not load.  Error message States "a problem has been experienced...". "but doesn't say what! Som

  • BlackBerry smartphones cannot update BlackBerry Curve 8520 5.0

    I am a new BlackBerry user, then I begin to use Curve 8520 version 4.6.1.314 4.2.0.135 with 22519E9E PIN platform. I am located in the Philippines and my provider is Globe Telecom. My problem is that I can't update my device to 5.0. I tried using the