Tool for table partitioning maintenance?
Hi,
Anyone knows a tool for table partitioning maintenance?
I have tested Oracle ILM and it gives me the scripts but are not executed automatically.
I'm looking for something that helps me with creating new partitions automatically.
Thanks.
Carlos
Which version?
This is solved in 11g you need not search for outside tool. Oracle has Interval partitioning for tables available which creates automatic partitions based on time, partitions by date, month,.....
you can script the partitions creation based on date, month in older versions.
Similar Messages
-
Suggestions for table partition for existing tables.
I have a table as below. This table contains huge data. This table has so many child tables .I am planning to do a 'Reference Partitioning' for the same.
create table PROMOTION_DTL
PROMO_ID NUMBER(10) not null,
EVENT VARCHAR2(6),
PROMO_START_DATE TIMESTAMP(6),
PROMO_END_DATE TIMESTAMP(6),
PROMO_COST_START_DATE TIMESTAMP(6),
EVENT_CUT_OFF_DATE TIMESTAMP(6),
REMARKS VARCHAR2(75),
CREATE_BY VARCHAR2(50),
CREATE_DATE TIMESTAMP(6),
UPDATE_BY VARCHAR2(50),
UPDATE_DATE TIMESTAMP(6)
alter table PROMOTION_DTL
add constraint PROMOTION_DTL_PK primary key (PROMO_ID);
alter table PROMOTION_DTL
add constraint PROMO_EVENT_FK foreign key (EVENT)
references SP_PROMO_EVENT_MST (EVENT);
-- Create/Recreate indexes
create index PROMOTION_IDX1 on PROMOTION_DTL (PROMO_ID, EVENT)
create unique index PROMOTION_PK on PROMOTION_DTL (PROMO_ID)
-- Grant/Revoke object privileges
grant select, insert, update, delete on PROMOTION_DTL to SCHEMA_RW_ROLE;I would like to partition this table .Most of the queries contains the following conditions.
promo_end_date >= SYSDATE
and
(event = :input_event OR
(:input_Start_Date <= promo_end_date
AND promo_start_date <= :input_End_Date))Any time the promotion can be closed by updating the PROMO_END_DATE.
Interval partioning on PROMO_END_DATE is not possible as PROMO_END_DATE is a nullable and updatable field.
I am now to table partition.
Any suggestions are welcome...DO NOT POST THE SAME QUESTION IN MULTIPLE FORUMS PLEASE!
Suggestions for table partition of existing tables -
Truncating first partition created for table partitioned by INTERVAL
Hi,
I have a table created with interval partitions.
When I truncate the partitions, I am unable to truncate the very first partition created on the table. How can I do this?
Thanks.>
When I truncate the partitions, I am unable to truncate the very first partition created on the table
>
I'm going to assume you mean DROP and not TRUNCATE and are getting thel following error when you try to DROP the very first partition
>
ORA-14758: Last partition in the range section cannot be dropped
>
Interval partitioned tables have one or more RANGE partitions and zero or more INTERVAL partitions. The boundary between the LAST range partition and the FIRST interval partition is known as the transition point.
As the error message states you cannot drop the sole remaining RANGE partition that is below the transition point.
You have to move the transition point by merging the last remaining RANGE partition and the first INTERVAL partition. Since dropping a partiton means you no longer want the data you would normally truncate the range partition prior to the merge to minimize the amount of undo and redo that will be generated by the merge.
See this article for an example of how to 'move' the transition point to effectively drop the last remaining RANGE partition.
http://prutser.wordpress.com/2010/01/11/dropping-interval-partitions/ -
I am planning for table partitioning of existing tables...
database is production 10gR1 i need it to upgrade to 11gR2 and also implement table partitioning. what should be the best way to do so with minimum downtime and zero data loss. Please advice. size of the tables are 20 to 40GB.. source database is in solaris and planning to migrate on linux.my question is for partitioning with minimum downtime with zero data loss.
the scenario is like
I took a export of source table and create a new partitioned table with different name, then import the data into new table, drop the source table and rename the new partitioned table with the source tables's name. Its all fine because there will be very minimum downtime but here we will loss some data. It is because the transactions which are done in the mean time will not be in the exported file. Is there any way another..? I hope you got my question. -
I don't see the option for Table partition, even in Server
Model. Could you please send me complete instructions for
creating a Table partition. That would be of great help. I
did created table partitions manually, tested it onto the
database, did a design capture of the DDL, it worked fine, but
when i re-generated the DDL of the same table using designer,
all the partitions were missing. Please suggest.
Thanks,
Manish.Table partitioning is in the "db admin". Have you checked that
the database is 8.0 or 8.1 in the repository property "Oracle
Database" otherwise you won't be able to see the parititioning
properties (if you do change the version property don't forget
to restart the design editor).
HTH
Steve -
Reg : Table Partitions -
Hi Experts,
Can anyone please tell me why do we go for Table Partitioning?
Also, would like to know its pros & cons.
Thanks in Advance.
Ranit B.ranitB wrote:
Hi Experts,
Can anyone please tell me why do we go for Table Partitioning?
Also, would like to know its pros & cons.
When to Partition a Table
http://docs.oracle.com/cd/B28359_01/server.111/b32024/partition.htm -
What is table partition?
HI,
What is meant for table partition?
-Arun.M.DHi Arun ,
You use partitioning to split the total dataset for an InfoProvider into several, smaller, physically independent and redundancy-free units. This separation improves system performance when you analyze data delete data from the InfoProvider.The basic idea behind database partitioning is to split a physical table and its indexes into several smaller physical tables and indexes.
http://help.sap.com/saphelp_nw04s/helpdata/en/33/dc2038aa3bcd23e10000009b38f8cf/content.htm
http://help.sap.com/saphelp_nw04/helpdata/en/e0/b60b404b2b1e07e10000000a1550b0/content.htm
Regards,
® -
Is ther any standard report for GR/IR Maintenance Main Tool
is ther any standard report for GR/IR Maintenance Main Tool ?
Hi Salsa,
Use Tcode MB5S --> List of GR/IR Balance.
Assign pts, if found useful
Regargds
Sandeep Acharya -
Hello folks,
I had successfully created a table and I tried inserting some records in to the table using table maintenance.
I received the following error.
'The maintenance dialog for table zxxx is incomplete or not defined'.
What does this mean?? And what should I do??
I am pasting the detail help over this error.
The maintenance dialog for ZTV_DBS_RANGE_NO is incomplete or not defined
Message no. SV 037
Diagnosis
The called function with the view/table ZTV_DBS_RANGE_NO needs a special maintenance dialog which, however, either does not exist at all, or does not exist completely.
System Response
The called function cannot be performed.
Procedure
Generate the required maintenance dialog.
Please helpYou have to create the maintenance dialog for table you would like to use with transaction SM30 / SM31.
To do this look the transaction SE55.
(or SE11, select the table, MODIFY, (menu) Utilities -> Maintain dialog ... )
Regards
Frédéric
Message was edited by: Frédéric Girod -
Best practice for replicating Partitioned table
Hi SQL Gurus,
Requesting your help on the design consideration for replicating a partitioned table.
1. 4 Partitioned tables (1 master table with foreign key constraints to 3 tables) partitioned based on monthly YYYYMM
2. 1 table has a XML column in it
3. Monthly switch partition to remove old data, since it is having foreign key constraint; disable until the switch is complete
4. 1 month partitioned data is 60 GB
having said the above, wanted to create a copy of the same tables to a different servers.
I can think of
1. Transactional replication, but then worried about the XML column,snapshot size and the alter switch will make the same thing
on the subscriber or row by row delete.
2. Logshipping with standby with every 15 minutes, but then it will be for the entire database; because I have other partitioned monthly table which is of 250 GB worth.
3. Thinking about replicating the Partitioned table as Non Partitioned, in that case how the alter switch will work. Is it possible to ignore delete when setting up the replication.
3. SSIS or Stored procedure method of moving data on a daily basis.
4. Backup and restore on a daily basis, but this will not work when the source partition is removed.
GaneshPlz refer to
http://msdn.microsoft.com/en-us/library/cc280940.aspx -
Error in creating Table Maintenance for TABLES: J_2IRG1BAL ,Dump error show
Dear Gurus
I have Created one Table Maintenance for TABLES: J_2IRG1BAL ,
1) I have take function group as same as table name like J_2IRG1BAL
3) Authorization Group &NC&
4) Authorization object S_TABU_DIS
5) Function group J_2IRG1BAL
6) Package J1I5
7) Maintenance type one step.
8) Maint. Screen No. Overview screen 2009.
9) Recording routine STD recording routines .
I have assign screen single screen 1 but it will not take the screen so ill put screen 2009 ,the system will not not accept the screen but I proposed to Save and activate the table maintenance generator and created and save the function group ,the table is ready to save the entries
We have to go to SM30 then put 4-5 entries ,after that a dump error shows
Which i have attachéd in this mail kindly help me out
Its effect in production server.
I have found that the error is given below I have mentioned all the details
Kindly read this
I have created function group J_2IRG1BAL and assign Package J1I5 and function group,J1I5 is already a Function group so problem occurs a dump error message displays
Kindly give me the right solution all the Clients are effected
110,100 150,250 these all are effected development clients
300 is prod client this is also affected because I have created a table maintenance generator and send the req to production .
*Dump Error Shows in Production*
Runtime Errors SYNTAX_ERROR
Date and Time 11.12.2008 09:26:30
What happened?
| Error in ABAP application program.
Error analysis
In program "SAPLJ1I5 ", the following syntax error occurred:
"The program "SAPLJ1I5" is not Unicode-compatible, according to its pro"
"gram attributes."
The current ABAP program "SAPLSVIM" had to be terminated because one of the
statements could not be executed.
This is probably due to an error in the ABAP program.
In program "SAPLJ1I5 ", the following syntax error occurred
in the Include "SAPLJ1I5 " in line 0:
"The program "SAPLJ1I5" is not Unicode-compatible, according to its pro"
"gram attributes."
rigger Location of Runtime Error |
Program SAPLSVIM
Include LSVIMU01
Row 107
Module type (FUNCTION)
| Module Name VIEW_MAINTENANCE
Author and last person to change the Include are:
Author "TTLABAP2 "
Last changed by "TTLABAP2 "
105
Initialisierung des Abgleichsmandanten zum View *
106
>>>>>
vim_default_upgr_clnt-viewname = x_header-viewname.
108
vim_default_upgr_clnt-client = client_for_upgrade.
109
PERFORM vim_set_global_field_value IN PROGRAM (fpool)
| 110| USING 'VIM_DEFAULT_UPGR_CLNT' 'C' vim_default_upgr_clnt rc.I have send you all the details regarding the table maintenance generator
error is shown below
I have Created one Table Maintenance for TABLES: J_2IRG1BAL ,
1) I have take function group as same as table name like J_2IRG1BAL
3) Authorization Group &NC&
4) Authorization object S_TABU_DIS
5) Function group J_2IRG1BAL
6) Package J1I5
7) Maintenance type one step.
8) Maint. Screen No. Overview screen 2009.
9) Recording routine STD recording routines .
I have assign screen single screen 1 but it will not take the screen so ill put screen 2009 ,the system will not not accept the screen but I proposed to Save and activate the table maintenance generator and created and save the function group ,the table is ready to save the entries
We have to go to SM30 then put 4-5 entries ,after that a dump error shows
Which i have attachéd in this mail kindly help me out
Its effect in production server.
I have found that the error is given below I have mentioned all the details
Kindly read this
I have created function group J_2IRG1BAL and assign Package J1I5 and function group,J1I5 is already a Function group so problem occurs a dump error message displays
Kindly give me the right solution all the Clients are effected
110,100 150,250 these all are effected development clients
300 is prod client this is also affected because I have created a table maintenance generator and send the req to production .
Runtime Errors SYNTAX_ERROR
Date and Time 11.12.2008 09:26:30
ShrtText
Syntax error in program "SAPLJ1I5 ".
What happened?
Error in ABAP application program.
The current ABAP program "SAPLSVIM" had to be terminated because one of the
statements could not be executed.
This is probably due to an error in the ABAP program.
In program "SAPLJ1I5 ", the following syntax error occurred
in the Include "SAPLJ1I5 " in line 0:
"The program "SAPLJ1I5" is not Unicode-compatible, according to its pro"
"gram attributes."
Author and last person to change the Include are:
Author "TTLABAP2 "
Last changed by "TTLABAP2 "
Error analysis
In program "SAPLJ1I5 ", the following syntax error occurred:
"The program "SAPLJ1I5" is not Unicode-compatible, according to its pro"
"gram attributes."
Trigger Location of Runtime Error
Program SAPLSVIM
Include LSVIMU01
Row 107
Module type (FUNCTION)
Module Name VIEW_MAINTENANCE
Source Code Extract
Line
SourceCde
77
TRANSPORTING NO FIELDS.
78
IF sy-subrc NE 0.
79
SELECT SINGLE * FROM tfdir WHERE funcname EQ <function_name>.
80
IF sy-subrc NE 0.
81
RAISE no_editor_function.
82
ELSE.
83
length = strlen( function_name1 ).
84
ASSIGN function_name1(length) TO <function_name>.
85
SELECT SINGLE * FROM tfdir WHERE funcname EQ <function_name>.
86
IF sy-subrc NE 0.
87
RAISE no_database_function.
88
ENDIF.
89
ENDIF.
90
INSERT x_header-viewname INTO alr_checked_views INDEX sy-tabix.
91
ELSE.
92
length = strlen( function_name1 ).
93
ASSIGN function_name1(length) TO <function_name>.
94
ENDIF.
95
96
Initialisierung der RFC-Destination zum View *
97
98
FPOOL+4 = X_HEADER-AREA.
99
fpool = x_header-fpoolname.
100
vim_default_rfc_dest-viewname = x_header-viewname.
101
vim_default_rfc_dest-rfcdest = rfc_destination_for_upgrade.
102
PERFORM vim_set_global_field_value IN PROGRAM (fpool)
103
USING 'VIM_DEFAULT_RFC_DEST' 'C' vim_default_rfc_dest rc.
104
105
Initialisierung des Abgleichsmandanten zum View *
106
>>>>>
vim_default_upgr_clnt-viewname = x_header-viewname.
108
vim_default_upgr_clnt-client = client_for_upgrade.
109
PERFORM vim_set_global_field_value IN PROGRAM (fpool)
110
USING 'VIM_DEFAULT_UPGR_CLNT' 'C' vim_default_upgr_clnt rc.
111
112
set flag if complex selection conditions in sellist *
113
114
IF complex_selconds_used NE space.
115
READ TABLE dba_sellist INDEX 1.
116
IF sy-subrc EQ 0 AND dba_sellist-cond_kind EQ space.
117
dba_sellist-cond_kind = 'C'. MODIFY dba_sellist INDEX 1.
118
ENDIF.
119
ENDIF.
120
121
direkter Vergleich: Flagge setzen usw. *
122
123
IF view_action EQ vim_direct_upgrade.
124
view_action = aendern.
125
PERFORM vim_set_global_field_value IN PROGRAM (fpool)
126
USING 'VIM_SPECIAL_MODE' 'C' vim_direct_upgrade rc. -
External Tables preprocessor in 11.2 as a tool for DBAs
I'm really really excited about new 11.2 external tables preprocessor feature. Oracle documentation show examples based on compressed files and how to load uncompress them on a fly and load them to oracle.
Although that is interesting use of external tables preprocessor, I think what is more interesting is the fact that it can be used outside normal ETL and can be great tool for DBAs who run scripts in unix, now they can execute the scripts from oracle environment (e.g. oracle apex) and read the results of the script very easy way using select * from ... (until now I was using JAVA for executing unix scripts from Oracle environment, this is easier way for sure)
I posted few very simple samples on my blog http://jiri.wordpress.com/2010/01/19/no-more-unix-scripts-in-11-2/Hi,
I agree the external tables preprocessor is a great feature.
BUT, I have a problem when I use it with Oracle APEX 4.1.
It gives ORA-29913: error in executing ODCIEXTTABLEFETCH callout
Any ideas?
Thanks -
Tool for viewing the relation between tables.
Hi,
I imported the schema dump in Oracle 10g R2 DB, there are about 800 plus tables in that schema. I would like to know the relataion between tables.So,What tools are available for viewing the relation between tables?. I have TOAD, and Oracles SQL Developer tolls, if there are any free tools for the same, please let me know the URLs.
Regards,
Sabdar Syed.Hmmm, for free, except what gave Eric earlier, not easy...
Here already discuss about that :
Re: Table Dependencies
Nicolas. -
All rows in table do not qualify for specified partition
SQL> Alter Table ABC
2 Exchange Partition P1 With Table XYZ;
Table altered.
SQL> Alter Table ABC
2 Exchange Partition P2 With Table XYZ;
Exchange Partition P2 With Table XYZ
ERROR at line 2:
ORA-14099: all rows in table do not qualify for specified partition
The exchange partition works correct for the first time. However if we try to exchange 2nd partition it gives the error.
How do i solve this error?
How do i find rows which are not qualified for the specified portion. is there a query to find out the same?stephen.b.fernandes wrote:
Is there another way?First of all, exchange is physical operation. It is not possible to append exchanged data. So solution would be to create archive table as partitioned and use non-partitioned intermediate table for exchange:
SQL> create table FLX_TIME1
2 (
3 ACCOUNT_CODE VARCHAR2(50) not null,
4 POSTING_DATE DATE not null
5 ) partition by range(POSTING_DATE) INTERVAL(NUMTOYMINTERVAL(1, 'MONTH'))
6 ( partition day0 values less than (TO_DATE('01-12-2012', 'DD-MM-YYYY') ) )
7 /
Table created.
SQL> create index FLX_TIME1_N1 on FLX_TIME1 (POSTING_DATE)
2 /
Index created.
SQL> create table FLX_TIME1_ARCHIVE
2 (
3 ACCOUNT_CODE VARCHAR2(50) not null,
4 POSTING_DATE DATE not null
5 ) partition by range(POSTING_DATE) INTERVAL(NUMTOYMINTERVAL(1, 'MONTH'))
6 ( partition day0 values less than (TO_DATE('01-12-2012', 'DD-MM-YYYY') ) )
7 /
Table created.
SQL> create table FLX_TIME2
2 (
3 ACCOUNT_CODE VARCHAR2(50) not null,
4 POSTING_DATE DATE not null
5 )
6 /
Table created.
SQL> Declare
2 days Number;
3 Begin
4 FOR days IN 1..50
5 Loop
6 insert into FLX_TIME1 values (days,sysdate+days);
7 End Loop;
8 commit;
9 END;
10 /
PL/SQL procedure successfully completed.
SQL> set linesize 132
SQL> select partition_name,high_value from user_tab_partitions where table_name='FLX_TIME1';
PARTITION_NAME HIGH_VALUE
DAY0 TO_DATE(' 2012-12-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN')
SYS_P119 TO_DATE(' 2013-01-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN')
SYS_P120 TO_DATE(' 2013-02-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN')
Now we need to echange partition SYS_P119 to FLX_TIME2 and then echange FLX_TIME2 into FLX_TIME1_ARCHIVE:
To exchange it with FLX_TIME2:
SQL> truncate table FLX_TIME2;
Table truncated.
SQL> alter table FLX_TIME1 exchange partition SYS_P119 with table FLX_TIME2;
Table altered.To exchange FLX_TIME2 with FLX_TIME1_ARCHIVE we need to create corresponding partition in FLX_TIME1_ARCHIVE. To do than we use LOCK TABLE PARTITION FOR syntax supplying proper date value HIGH_VALUE - 1 (partition partitioning column is less than HIGH_VALUE so we subtract 1) and then use ALTER TABLE EXCHANGE PARTITION FOR syntax:
SQL> lock table FLX_TIME1_ARCHIVE
2 partition for(TO_DATE(' 2013-01-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN') - 1)
3 in share mode;
Table(s) Locked.
SQL> alter table FLX_TIME1_ARCHIVE exchange partition
2 for(TO_DATE(' 2013-01-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN') - 1)
3 with table FLX_TIME2;
Table altered.
SQL> Same way we exchange partition SYS_P120:
SQL> truncate table FLX_TIME2;
Table truncated.
SQL> alter table FLX_TIME1 exchange partition SYS_P120 with table FLX_TIME2;
Table altered.
SQL> lock table FLX_TIME1_ARCHIVE
2 partition for(TO_DATE(' 2013-01-02 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN') - 1)
3 in share mode;
Table(s) Locked.
SQL> alter table FLX_TIME1_ARCHIVE exchange partition
2 for(TO_DATE(' 2013-02-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN') - 1)
3 with table FLX_TIME2;
Table altered.
SQL> Now:
SQL> select count(*)
2 from FLX_TIME1 partition(day0)
3 /
COUNT(*)
8
SQL> select count(*)
2 from FLX_TIME1 partition(sys_p119)
3 /
COUNT(*)
0
SQL> select count(*)
2 from FLX_TIME1 partition(sys_p120)
3 /
COUNT(*)
0
SQL> select partition_name from user_tab_partitions where table_name='FLX_TIME1_ARCHIVE';
PARTITION_NAME
DAY0
SYS_P121
SYS_P122
SQL> select count(*)
2 from FLX_TIME1_ARCHIVE partition(day0)
3 /
COUNT(*)
0
SQL> select count(*)
2 from FLX_TIME1_ARCHIVE partition(sys_p121)
3 /
COUNT(*)
31
SQL> select count(*)
2 from FLX_TIME1_ARCHIVE partition(sys_p122)
3 /
COUNT(*)
11
SQL> SY. -
Need information for table maintenance genarator?
HI Sir,
I have a tcode for table maintenance generator of Z table, my requirement is to add new field to that Z table.
Is it required to maintain table maintenance generator again for that table and how to assign the same tcode for that.
plz help me to solve this.
thanks and regards
syed
Basic question. Please put some effort from your side before posting here. You have already been warned against breaking the rules of this forum. Continued violations will lead to account deletion.
Edited by: kishan P on Sep 2, 2010 11:59 AMHi Taj,
When you add your new field in the table, the table gets partially active first, then you need to Adjust the table using Database Utility (SE14) to get the table activated.
For Database Utility see online help [Database Utility|http://help.sap.com/erp2005_ehp_02/helpdata/EN/a4/3790360ee65840e10000009b38f839/frameset.htm]
Then You need to regenerate the table maintainence Generator.
Hope this helps.
Regards
Abhii
Edited by: Abhii on Sep 2, 2010 7:06 AM
Maybe you are looking for
-
How to set up dynamic dns?
Hi everybody, could anybody help me to set up Dynamic DNS in the Airport Extreme? I am using Airport Utility 5.5.3 I also have dlink dns service active Thank You Manolo Fernández
-
Since getting my iPhone 5 I've had camera issues. To start with it was over exposure, the camera was flashing too early and leaving me with dark pictures. After a failed reset I visited the apple store, where they told me it was a known problem and a
-
How Do I setup Dual Ethernet (Snow Saucer) base as "repeater" for Extreme
Just migrated from G4 iBook to an MBP. Currently still using my Snow Saucer (Dual Ethernet) airport base station (had to communicate with the Base using the iBook, and manually enter the MAC address of the MBP). When I go to the trouble of setting up
-
Getting the File Path of file attached to Document(CV03N)
Hi, We are migrating DOCUMENTS(Document Info Record)data from SAP 3.1i Version to SAP ECC6.0 Version. Here i want to transfer file path of file attached in 3.1i(From DRAW-FILEP) but, i can not able to find complete path of that particular file in FIL
-
As of iTunes 10, I have noticed my scrollbar no longer snaps to the point I click on. I have to drag the indicator to the point I am looking for. I'm refering to my music catalogue and in the view as "album list" and sorted by artist. Anyone else hav