Unix Technical Forum

SEO

vBulletin Search Engine Optimization


Go Back   Unix Technical Forum > Database Server Software > Oracle Database

Register FAQ Members List Calendar Search Today's Posts Mark Forums Read
  #1 (permalink)  
Old 02-25-2008, 01:51 PM
Sylvestre
 
Posts: n/a
Default Mig from DMTS to LMTS

Hello

Our problem is simple and certainly have been
already seen
here, we upgrade our 9.2.0.6 databases to 10gr2,
we have
some big dictionary managed tablespace with
thousands of tables,
wich are heavily fragmented, finding the best
practice to migrate them to LMTS with
ASSM, I have found the classical practices :
1) create the new lmts tablespace, move the
objects to the new one,
but with thousand of tables how to proceed, by
script ?, is there
a tool in 10g wich done automaticaly the work
?

2)use DBMS_SPACE, but we know that we can't have
ASSM, and
the fragmentation remain, can we use SHRINK in
10g to eliminate it ?

And one of interest, but I was not able to found
confirmation it work :

3) migrate to 10g with keeping the dmts, create a
new 10g instance with lmts tbs,
and use datapump to export objects from the
first(dmts) to the new(lmts), and then
using transportable tablespace, back to
original instance...I know that datapump
allow to select objects of a tbs, but I also
read that we can get error ORA-25150 doing
that...

Thank you for advices..



Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #2 (permalink)  
Old 02-25-2008, 01:51 PM
sybrandb
 
Posts: n/a
Default Re: Mig from DMTS to LMTS


Sylvestre wrote:
> Hello
>
> Our problem is simple and certainly have been
> already seen
> here, we upgrade our 9.2.0.6 databases to 10gr2,
> we have
> some big dictionary managed tablespace with
> thousands of tables,
> wich are heavily fragmented, finding the best
> practice to migrate them to LMTS with
> ASSM, I have found the classical practices :
> 1) create the new lmts tablespace, move the
> objects to the new one,
> but with thousand of tables how to proceed, by
> script ?, is there
> a tool in 10g wich done automaticaly the work
> ?
>
> 2)use DBMS_SPACE, but we know that we can't have
> ASSM, and
> the fragmentation remain, can we use SHRINK in
> 10g to eliminate it ?
>
> And one of interest, but I was not able to found
> confirmation it work :
>
> 3) migrate to 10g with keeping the dmts, create a
> new 10g instance with lmts tbs,
> and use datapump to export objects from the
> first(dmts) to the new(lmts), and then
> using transportable tablespace, back to
> original instance...I know that datapump
> allow to select objects of a tbs, but I also
> read that we can get error ORA-25150 doing
> that...
>


1) IIRC correctly 9i OEM has such a tool. In 10g this would be probably
relocated to DB control or Grid Control. It may be in the Change
Management Pack and it that case you need to pay for it.
The full version of Toad has also a tool for it.
Alternatively you could write some PL/SQL. It is not that difficult!
If you don't do it online you only need to
alter table move
and
alter index rebuild

The basic algorithm would be something like

for i in (select table_name from user_tables)
collect a list of index in a pl/sql table
execute immediate 'alter table '||i.table_name||' move ...';
Loop through the pl//sql table and rebuild indexes
end loop;
/



2) DBMS_SPACE is also inreliable.

3 In 10g DMT are DEAD.

--
Sybrand Bakker
Senior Oracle DBA



> Thank you for advices..


Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #3 (permalink)  
Old 02-25-2008, 01:51 PM
Charles Hooper
 
Posts: n/a
Default Re: Mig from DMTS to LMTS

Sylvestre wrote:
> Hello
>
> Our problem is simple and certainly have been
> already seen
> here, we upgrade our 9.2.0.6 databases to 10gr2,
> we have
> some big dictionary managed tablespace with
> thousands of tables,
> wich are heavily fragmented, finding the best
> practice to migrate them to LMTS with
> ASSM, I have found the classical practices :
> 1) create the new lmts tablespace, move the
> objects to the new one,
> but with thousand of tables how to proceed, by
> script ?, is there
> a tool in 10g wich done automaticaly the work
> ?
>
> 2)use DBMS_SPACE, but we know that we can't have
> ASSM, and
> the fragmentation remain, can we use SHRINK in
> 10g to eliminate it ?
>
> And one of interest, but I was not able to found
> confirmation it work :
>
> 3) migrate to 10g with keeping the dmts, create a
> new 10g instance with lmts tbs,
> and use datapump to export objects from the
> first(dmts) to the new(lmts), and then
> using transportable tablespace, back to
> original instance...I know that datapump
> allow to select objects of a tbs, but I also
> read that we can get error ORA-25150 doing
> that...
>
> Thank you for advices..


A method that I have used is to create the new locally managed
tablespace, and issue ALTER TABLE MOVE commands to move the tables to
the newly created tablespace. You then need to move/rebuild the
indexes for the affected tables. It is possible to create a SQL
statement which builds other SQL statements to assist with the task.
For example, the following:
SELECT
'ALTER INDEX '||OWNER||'.'||INDEX_NAME||' REBUILD TABLESPACE
INDEX_DATA2 NOLOGGING;'
FROM
DBA_INDEXES
WHERE
OWNER='MY_USER_HERE'
AND TABLESPACE_NAME='INDEX_DATA'
ORDER BY
TABLE_NAME,
INDEX_NAME;

The above creates SQL statements that will move each index owned by the
user MY_USER_HERE which is currently in the INDEX_DATA tablespace into
the INDEX_DATA2 tablespace, while minimizing the amount of redo
generated. Create a backup of the database before and after the
changes. The move should take place when there is minimal activity in
the database.

Another option is to export the data using exp or expdp (if in 10g),
build a new database instance, precreate all tablespaces as locally
managed, and then import the data. This is obviously not the best
approach.

Dictionary managed tablespaces are _potentially_ dead in 10g, if the
SYSTEM tablespace is created as locally managed, which is the default
for the graphical database creation utility for Oracle.

Charles Hooper
PC Support Specialist
K&M Machine-Fabricating, Inc.

Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #4 (permalink)  
Old 02-25-2008, 01:55 PM
Sylvestre
 
Posts: n/a
Default Re: Mig from DMTS to LMTS

Thank you for answer.

There is two questions non solved :
1) Is it possible to migrate a database(9.2) to
10g with dictionary managed tbs, keeping them dmts
?
2)Is it possible , in 10g, to use datapump to
migrate from dmts to lmts ?

Yes it is true that by default 10g create the
system tbs in lmts, but it is also true that
oracle continue
to support dmts in 10g..

Thank yu

"Charles Hooper" <hooperc2000@yahoo.com> a écrit
dans le message de news:
1164227053.666471.323630@k70g2000cwa.googlegroups. com...
> Sylvestre wrote:
>> Hello
>>
>> Our problem is simple and certainly have been
>> already seen
>> here, we upgrade our 9.2.0.6 databases to
>> 10gr2,
>> we have
>> some big dictionary managed tablespace with
>> thousands of tables,
>> wich are heavily fragmented, finding the best
>> practice to migrate them to LMTS with
>> ASSM, I have found the classical practices :
>> 1) create the new lmts tablespace, move the
>> objects to the new one,
>> but with thousand of tables how to proceed,
>> by
>> script ?, is there
>> a tool in 10g wich done automaticaly the
>> work
>> ?
>>
>> 2)use DBMS_SPACE, but we know that we can't
>> have
>> ASSM, and
>> the fragmentation remain, can we use SHRINK
>> in
>> 10g to eliminate it ?
>>
>> And one of interest, but I was not able to
>> found
>> confirmation it work :
>>
>> 3) migrate to 10g with keeping the dmts, create
>> a
>> new 10g instance with lmts tbs,
>> and use datapump to export objects from
>> the
>> first(dmts) to the new(lmts), and then
>> using transportable tablespace, back to
>> original instance...I know that datapump
>> allow to select objects of a tbs, but I also
>> read that we can get error ORA-25150 doing
>> that...
>>
>> Thank you for advices..

>
> A method that I have used is to create the new
> locally managed
> tablespace, and issue ALTER TABLE MOVE commands
> to move the tables to
> the newly created tablespace. You then need to
> move/rebuild the
> indexes for the affected tables. It is possible
> to create a SQL
> statement which builds other SQL statements to
> assist with the task.
> For example, the following:
> SELECT
> 'ALTER INDEX '||OWNER||'.'||INDEX_NAME||'
> REBUILD TABLESPACE
> INDEX_DATA2 NOLOGGING;'
> FROM
> DBA_INDEXES
> WHERE
> OWNER='MY_USER_HERE'
> AND TABLESPACE_NAME='INDEX_DATA'
> ORDER BY
> TABLE_NAME,
> INDEX_NAME;
>
> The above creates SQL statements that will move
> each index owned by the
> user MY_USER_HERE which is currently in the
> INDEX_DATA tablespace into
> the INDEX_DATA2 tablespace, while minimizing the
> amount of redo
> generated. Create a backup of the database
> before and after the
> changes. The move should take place when there
> is minimal activity in
> the database.
>
> Another option is to export the data using exp
> or expdp (if in 10g),
> build a new database instance, precreate all
> tablespaces as locally
> managed, and then import the data. This is
> obviously not the best
> approach.
>
> Dictionary managed tablespaces are _potentially_
> dead in 10g, if the
> SYSTEM tablespace is created as locally managed,
> which is the default
> for the graphical database creation utility for
> Oracle.
>
> Charles Hooper
> PC Support Specialist
> K&M Machine-Fabricating, Inc.
>



Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #5 (permalink)  
Old 02-25-2008, 01:55 PM
Charles Hooper
 
Posts: n/a
Default Re: Mig from DMTS to LMTS

Sylvestre wrote:
> "Charles Hooper" <hooperc2000@yahoo.com> a écrit
> dans le message de news:
> 1164227053.666471.323630@k70g2000cwa.googlegroups. com...
> > A method that I have used is to create the new
> > locally managed
> > tablespace, and issue ALTER TABLE MOVE commands
> > to move the tables to
> > the newly created tablespace. You then need to
> > move/rebuild the
> > indexes for the affected tables. It is possible
> > to create a SQL
> > statement which builds other SQL statements to
> > assist with the task.
> > For example, the following:
> > SELECT
> > 'ALTER INDEX '||OWNER||'.'||INDEX_NAME||'
> > REBUILD TABLESPACE
> > INDEX_DATA2 NOLOGGING;'
> > FROM
> > DBA_INDEXES
> > WHERE
> > OWNER='MY_USER_HERE'
> > AND TABLESPACE_NAME='INDEX_DATA'
> > ORDER BY
> > TABLE_NAME,
> > INDEX_NAME;
> >
> > The above creates SQL statements that will move
> > each index owned by the
> > user MY_USER_HERE which is currently in the
> > INDEX_DATA tablespace into
> > the INDEX_DATA2 tablespace, while minimizing the
> > amount of redo
> > generated. Create a backup of the database
> > before and after the
> > changes. The move should take place when there
> > is minimal activity in
> > the database.
> >
> > Another option is to export the data using exp
> > or expdp (if in 10g),
> > build a new database instance, precreate all
> > tablespaces as locally
> > managed, and then import the data. This is
> > obviously not the best
> > approach.
> >
> > Dictionary managed tablespaces are _potentially_
> > dead in 10g, if the
> > SYSTEM tablespace is created as locally managed,
> > which is the default
> > for the graphical database creation utility for
> > Oracle.
> >
> > Charles Hooper
> > PC Support Specialist
> > K&M Machine-Fabricating, Inc.

> Thank you for answer.
>
> There is two questions non solved :
> 1) Is it possible to migrate a database(9.2) to
> 10g with dictionary managed tbs, keeping them dmts
> ?
> 2)Is it possible , in 10g, to use datapump to
> migrate from dmts to lmts ?
>
> Yes it is true that by default 10g create the
> system tbs in lmts, but it is also true that
> oracle continue
> to support dmts in 10g..
>
> Thank yu
>


> Thank you for answer.
>
> There is two questions non solved :
> 1) Is it possible to migrate a database(9.2) to
> 10g with dictionary managed tbs, keeping them dmts
> ?
> 2)Is it possible , in 10g, to use datapump to
> migrate from dmts to lmts ?
>
> Yes it is true that by default 10g create the
> system tbs in lmts, but it is also true that
> oracle continue
> to support dmts in 10g..
>
> Thank yu
>


Question #1:
It is still possible to create new tablespaces as dictionary managed
tablespaces in Oracle 10g:
http://download-east.oracle.com/docs...ments_7003.htm

"Specify LOCAL if you want the tablespace to be locally managed.
Locally managed tablespaces have some part of the tablespace set aside
for a bitmap. This is the default for permanent tablespaces. Temporary
tablespaces are always automatically created with locally managed
extents.

AUTOALLOCATE specifies that the tablespace is system managed. Users
cannot specify an extent size. You cannot specify AUTOALLOCATE for a
temporary tablespace.

UNIFORM specifies that the tablespace is managed with uniform extents
of SIZE bytes.The default SIZE is 1 megabyte. All extents of temporary
tablespaces are of uniform size, so this keyword is optional for a
temporary tablespace. However, you must specify UNIFORM in order to
specify SIZE. You cannot specify UNIFORM for an undo tablespace.

Specify DICTIONARY if you want the tablespace to be managed using
dictionary tables.

Restriction on Dictionary-managed Tablespaces You cannot specify
DICTIONARY if the SYSTEM tablespace of the database is locally managed
or if you have specified the temporary_tablespace_clause."

Migrating a 9.2 database to 10g will not convert the existing
dictionary managed tablespaces to locally managed.

According to the documentation, DBMS_SPACE_ADMIN.
TABLESPACE_MIGRATE_TO_LOCAL could be used to migrate a dictionary
managed tablespace to locally managed.

http://download-east.oracle.com/docs...1/tspaces..htm

I believe that Sybrand commented in this thread that DBMS_SPACE is
unreliable, so maybe this is not the best approach.

Question #2:
Yes, it is possible to convert from dictionary managed tablespaces to
locally managed using datapump. Export the data (expdp), drop the
tablespaces including contents, pre-create the tablespaces as locally
managed, and then import the data (impdp). I would strongly advise
against using this method, because if something goes wrong (and the
back ups are no good), all of the data may be unusable.

If you are moving the database instance from one server to another as
part of the 9.2 to 10g conversion, consider using exp on the old
server, precreate the tablespaces as locally managed on the new server,
and use imp to read the data into the new database. If something goes
wrong (create and check the export/import logs), fix the problem, then
repeat as many times as necessary.

If you decide to just migrate from 9.2 to 10g on the same server,
consider creating additional locally managed tablespaces. At a later
time, you can move the tables, indexes, and other objects to those
locally managed tablespaces. Note: if you move a table, you must
recreate/rebuild the table's indexes.
http://download-east.oracle.com/docs...s.htm#i1106606

Charles Hooper
PC Support Specialist
K&M Machine-Fabricating, Inc.

Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #6 (permalink)  
Old 02-25-2008, 01:56 PM
DA Morgan
 
Posts: n/a
Default Re: Mig from DMTS to LMTS

Sylvestre wrote:
> Thank you for answer.
>
> There is two questions non solved :
> 1) Is it possible to migrate a database(9.2) to
> 10g with dictionary managed tbs, keeping them dmts
> ?


Why would you think this is desirable?
--
Daniel A. Morgan
University of Washington
damorgan@x.washington.edu
(replace x with u to respond)
Puget Sound Oracle Users Group
www.psoug.org
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #7 (permalink)  
Old 02-25-2008, 01:57 PM
Sylvestre
 
Posts: n/a
Default Re: Mig from DMTS to LMTS

Hello Thank yu for answer, I will run some test.
Yes my customer want to keep existing DMTS
because, they are very big
and they think reorg will cost money...

"DA Morgan" <damorgan@psoug.org> a écrit dans le
message de news:
1164644798.145975@bubbleator.drizzle.com...
> Sylvestre wrote:
>> Thank you for answer.
>>
>> There is two questions non solved :
>> 1) Is it possible to migrate a database(9.2)
>> to 10g with dictionary managed tbs, keeping
>> them dmts ?

>
> Why would you think this is desirable?
> --
> Daniel A. Morgan
> University of Washington
> damorgan@x.washington.edu
> (replace x with u to respond)
> Puget Sound Oracle Users Group
> www.psoug.org



Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #8 (permalink)  
Old 02-26-2008, 02:32 AM
DA Morgan
 
Posts: n/a
Default Re: Mig from DMTS to LMTS

Sylvestre wrote:
> Hello Thank yu for answer, I will run some test.
> Yes my customer want to keep existing DMTS
> because, they are very big
> and they think reorg will cost money...
>
> "DA Morgan" <damorgan@psoug.org> a écrit dans le
> message de news:
> 1164644798.145975@bubbleator.drizzle.com...
>> Sylvestre wrote:
>>> Thank you for answer.
>>>
>>> There is two questions non solved :
>>> 1) Is it possible to migrate a database(9.2)
>>> to 10g with dictionary managed tbs, keeping
>>> them dmts ?

>> Why would you think this is desirable?
>> --
>> Daniel A. Morgan
>> University of Washington
>> damorgan@x.washington.edu
>> (replace x with u to respond)
>> Puget Sound Oracle Users Group
>> www.psoug.org


Please don't top post. Scroll to the bottom to reply in this forum.

Your customer is incorrect. The improved efficiency of LMT more than
offsets the change-over.
--
Daniel A. Morgan
University of Washington
damorgan@x.washington.edu
(replace x with u to respond)
Puget Sound Oracle Users Group
www.psoug.org
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Reply


Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On
Forum Jump


All times are GMT. The time now is 02:16 PM.


Powered by vBulletin® Version 3.6.5
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.2.0
UnixAdminTalk.com

1 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 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642