Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.server -> Re: move table for chianed rows?

Re: move table for chianed rows?

From: Andrea <netsecurity_at_tiscali.it>
Date: 28 Mar 2007 03:20:30 -0700
Message-ID: <1175077230.669237.52710@l77g2000hsb.googlegroups.com>


On 27 Mar, 23:44, "fitzjarr..._at_cox.net" <fitzjarr..._at_cox.net> wrote:
> On Mar 27, 2:42 am, "Andrea" <netsecur..._at_tiscali.it> wrote:
>
>
>
> > On 26 Mar, 16:25, "Mark D Powell" <Mark.Pow..._at_eds.com> wrote:
>
> > > On Mar 26, 7:11 am, "Andrea" <netsecur..._at_tiscali.it> wrote:
>
> > > > Hi,
>
> > > > sorry for my question (i'm a newbie DBA) but i've read on forums that
> > > > for resolve chained rows on tables, it is enough move table in this
> > > > method:
>
> > > > alter table FOO move;
>
> > > > is true? but what does it do exactly this command??
>
> > > > thanks for any support!
>
> > > > bye
> > > > andrew
>
> > > Actually a chained row is a row to big to fit into a single Oracle
> > > block and as such rebuilding the table will not eliminate chained
> > > rows.
>
> > > Unfortunately Oracle places the count of migrated rows in the
> > > dba_tables.chain.cnt column. A migrated row is a row that after an
> > > update operation would no longer fit back into the block it was in so
> > > Oracle migrates the row to a new block leaving a rowid marker behind
> > > that points to the new row location. Accesses via an index go to the
> > > old location and then have to do an extra IO to find the row in its
> > > new location.
>
> > > Before rebuilding a table to eliminate chained rows you need to look
> > > at the average row length and make sure it is less than the available
> > > space within a block. Otherwise you would be wasting your time.
>
> > ok, so.. if i understand...
> > for eliminate chained rows i have to:
>
> > 1) Estimate avg row length through dbms_stats.gather_tables or analyze
> > 2) Edit the storage of table (pctfree)
> > 3) alter table FOO move;
>
> > is right?
>
> > and you advise to use ASM ?
>
> > thanks very much!- Hide quoted text -
>
> > - Show quoted text -
>
> Wrong. To eliminate CHAINED rows you need a larger db_block_size. To
> eliminate MIGRATED rows you need to alter the PCTFREE/PCTUSED values
> for the table in question then either move the table or drop and
> recreate it. Migrated rows != chained rows. Mark D. Powell has
> already explained this difference to you.
>

ops. sorry.
now i understand :) Received on Wed Mar 28 2007 - 05:20:30 CDT

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US