alaasms بتاريخ: 10 مايو 2007 تقديم بلاغ مشاركة بتاريخ: 10 مايو 2007 السلام عليكم ورحمه الله وبركاتهانا ملاحظ ان حجم index عندي اصبح غير طبيعيا فقد وصل الي 11 جيجا وحجم table وصصل 2.5جيجا فقط فهل هناك خطا وما هو علاجه واعاده الامور الي طبيعتها وشكرا اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
muneer بتاريخ: 10 مايو 2007 تقديم بلاغ مشاركة بتاريخ: 10 مايو 2007 اخي الكريميجب ترفق لنـا structure for table و structure for index حتى يمكن تحديد المشكله بشكل أدق.على كل حال يمكنك ان تعيد بناء index وذلك باستخدام rebuild index alter index scott.pk_emp rebuild;سوف يقوم بأعادة بناء index (الجديد )وبعد الانتهاء من البناء يقوم بمسح القديم .. ولذلك يتطلب وجود space كافي لأجراء هذه العمليه , واثناء عملية rebuild لا تؤثر على اي query على هذا table. اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
alaasms بتاريخ: 10 مايو 2007 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 10 مايو 2007 اليك يا اخي شكل وصف الجدولCREATE TABLE DEBIT_ACCOUNT ( DOC_CODE NUMBER (9) NOT NULL, DOC_NO_D NUMBER (18) NOT NULL, DOC_DATE DATE NOT NULL, TOTAL_VALUE NUMBER (12,2) NOT NULL, CURRENCY_CODE NUMBER (4), ACCOUNT_CODE NUMBER (9), PART_VALUE NUMBER (12,2), SALE_TAX NUMBER (12,2), ADD_TAX NUMBER (12,2), ANOTHER_TAX NUMBER (12,2), REPRESENT_CODE NUMBER (8), CUST_CODE NUMBER (9), PAID_VALUE NUMBER (12,2) DEFAULT 0, MENU_NO NUMBER (8), EXCHANGE NUMBER (12,2) DEFAULT 1, DECLARATION VARCHAR2 (240), FLAG NUMBER (2), FLAG1 NUMBER (2), BRANCH_CODE NUMBER (2) NOT NULL, EDIT_DATE DATE, PAY_DATE DATE, BANK_CODE NUMBER (3), BRANCH_BANK_CODE NUMBER (3), STATE NUMBER (2) DEFAULT 0, PAYMENT_CODE NUMBER (2) DEFAULT 0, UNDER_CASH_FLAG NUMBER (2) DEFAULT 0, OLD_CUST NUMBER (9), BRANCH_CODE1 NUMBER (2), TEST NUMBER (12,2) DEFAULT 0, ORDER_NO NUMBER (8), ORDER_DATE DATE, INV_NO NUMBER (8), INV_DATE DATE, INV_CODE NUMBER (2), AUDITOR_FLAG NUMBER (2) DEFAULT 0, COUPON_NO NUMBER (8) DEFAULT 0, JURIST_FLAG NUMBER (1) DEFAULT 0, INV_BACK_FLAG NUMBER (1), SOURCE NUMBER (1) DEFAULT 0, ACTION_USER_DATE VARCHAR2 (50), PERIOD_FLAG NUMBER (2) DEFAULT 0, CONSTRAINT DA1_PK PRIMARY KEY ( DOC_NO_D, DOC_DATE, DOC_CODE, BRANCH_CODE ) USING INDEX TABLESPACE INDX PCTFREE 10 STORAGE ( INITIAL 10485760 NEXT 99434496 PCTINCREASE 50 )) TABLESPACE NILE_DATA NOLOGGING PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 STORAGE ( INITIAL 40960 NEXT 4882432 PCTINCREASE 10 MINEXTENTS 1 MAXEXTENTS 10240 FREELISTS 1 FREELIST GROUPS 1 ) NOCACHE; ALTER TABLE DEBIT_ACCOUNT ADD CONSTRAINT BRANCHE1 FOREIGN KEY (BRANCH_CODE) REFERENCES TSW.NBRANCH (NBR_CODE) ;ALTER TABLE DEBIT_ACCOUNT ADD CONSTRAINT REPRESENT1 FOREIGN KEY (REPRESENT_CODE) REFERENCES TSW.REP_MASTER (REP_CODE) ;ALTER TABLE DEBIT_ACCOUNT ADD CONSTRAINT PERIOD_F_K FOREIGN KEY (PERIOD_FLAG) REFERENCES CUST.PERIOD_TYPE (PERIOD_CODE) ;ALTER TABLE DEBIT_ACCOUNT ADD CONSTRAINT DEBIT_ACCOUNT_CUSTOMER FOREIGN KEY (ACCOUNT_CODE) REFERENCES TSW.CUSTOMER (CUST_CODE) DISABLE ;ALTER TABLE DEBIT_ACCOUNT ADD CONSTRAINT DEBIT_ACCOUNT_CUSTOMER1 FOREIGN KEY (CUST_CODE) REFERENCES TSW.CUSTOMER (CUST_CODE) DISABLE ;ALTER TABLE DEBIT_ACCOUNT ADD CONSTRAINT DA1_CUR_FK FOREIGN KEY (CURRENCY_CODE) REFERENCES CUST.CURRENCY (CURRENCY_CODE) ;ALTER TABLE DEBIT_ACCOUNT ADD CONSTRAINT DA1_DC_FK FOREIGN KEY (DOC_CODE) REFERENCES CUST.DOCUMENT_TYPE (DOC_CODE) ;CREATE INDEX CUST.TAX_INDEX ON "CUST".DEBIT_ACCOUNT(BRANCH_CODE, ACCOUNT_CODE, DOC_DATE) TABLESPACE INDX PCTFREE 10 STORAGE(INITIAL 262144 NEXT 12099584 PCTINCREASE 10 ) ; CREATE INDEX CUST.DA_DATE_INDEX ON "CUST".DEBIT_ACCOUNT(DOC_DATE) TABLESPACE INDX PCTFREE 10 STORAGE(INITIAL 262144 NEXT 7495680 PCTINCREASE 10 ) ; CREATE INDEX CUST.ACCOUNT_INDEX ON "CUST".DEBIT_ACCOUNT(ACCOUNT_CODE) TABLESPACE INDX PCTFREE 10 STORAGE(INITIAL 131072 NEXT 1425408 PCTINCREASE 10 ) ; CREATE UNIQUE INDEX CUST.ALTERNAT_P_K ON "CUST".DEBIT_ACCOUNT(DOC_CODE, DOC_NO_D, DOC_DATE) TABLESPACE INDX PCTFREE 10 STORAGE(INITIAL 262144 NEXT 7503872 PCTINCREASE 10 ) ; CREATE BITMAP INDEX CUST.SOURCE_INDEX ON "CUST".DEBIT_ACCOUNT(SOURCE) TABLESPACE INDX PCTFREE 10 STORAGE(INITIAL 16384 NEXT 507904 PCTINCREASE 50 ) ; CREATE BITMAP INDEX CUST.BRANCH_INDEX ON "CUST".DEBIT_ACCOUNT(BRANCH_CODE) TABLESPACE INDX PCTFREE 10 STORAGE(INITIAL 16384 NEXT 761856 PCTINCREASE 50 ) ; CREATE BITMAP INDEX CUST.DOC_CODE_INDEX ON "CUST".DEBIT_ACCOUNT(DOC_CODE) TABLESPACE INDX PCTFREE 10 STORAGE(INITIAL 16384 NEXT 335872 PCTINCREASE 50 ) ; CREATE INDEX CUST.PERIOD_FLAG ON "CUST".DEBIT_ACCOUNT(PERIOD_FLAG) TABLESPACE INDX PCTFREE 10 STORAGE(INITIAL 131072 NEXT 2326528 PCTINCREASE 10 ) ; CREATE INDEX CUST.DEBIT_ACCOYUNT1 ON "CUST".DEBIT_ACCOUNT(DOC_CODE, BRANCH_CODE) TABLESPACE INDX PCTFREE 10 STORAGE(INITIAL 10485760 NEXT 8192 PCTINCREASE 0 ) ; CREATE INDEX CUST.CUST_CODE_INDX ON "CUST".DEBIT_ACCOUNT(CUST_CODE) TABLESPACE INDX PCTFREE 10 STORAGE(INITIAL 40960 NEXT 127672320 PCTINCREASE 50 ) ; CREATE INDEX CUST.DOC_NO_D_INDX ON "CUST".DEBIT_ACCOUNT(DOC_NO_D) TABLESPACE INDX PCTFREE 10 STORAGE(INITIAL 16384 NEXT 11567104 PCTINCREASE 10 ) ; CREATE UNIQUE INDEX CUST.KEY ON "CUST".DEBIT_ACCOUNT(BRANCH_CODE, DOC_CODE, DOC_DATE, DOC_NO_D) TABLESPACE INDX PCTFREE 10 STORAGE(INITIAL 262144 NEXT 23592960 PCTINCREASE 10 ) ; CREATE INDEX CUST.TOTAL_VALUE_INDX ON "CUST".DEBIT_ACCOUNT(TOTAL_VALUE) TABLESPACE INDX PCTFREE 10 STORAGE(INITIAL 16384 NEXT 99434496 PCTINCREASE 50 ) ; CREATE INDEX CUST.PAY_CODE_INDEX ON "CUST".DEBIT_ACCOUNT(PAYMENT_CODE) TABLESPACE INDX PCTFREE 10 STORAGE(INITIAL 16384 NEXT 491347968 PCTINCREASE 10 ) ; CREATE INDEX CUST.DEBIT_ACCOUNT_INV_SK ON "CUST".DEBIT_ACCOUNT(INV_CODE, INV_NO, INV_DATE) TABLESPACE INDX PCTFREE 10 STORAGE(INITIAL 262144 NEXT 1777664 PCTINCREASE 10 ) ; CREATE INDEX CUST.DA1_CUR_FK_I ON "CUST".DEBIT_ACCOUNT(CURRENCY_CODE) TABLESPACE INDX PCTFREE 10 STORAGE(INITIAL 40960 NEXT 510271488 PCTINCREASE 50 ) ; اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
ابو صالح بتاريخ: 10 مايو 2007 تقديم بلاغ مشاركة بتاريخ: 10 مايو 2007 كما قال الاخ منير ،، الواضح انك مسحت جزء كبير من الجدول ولم تقم بعمل index rebuild جرب وشوف اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
alaasms بتاريخ: 12 مايو 2007 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 12 مايو 2007 اشكرك يا اخي علي الاهتماموعلي فكره انا بعمل اعاده انشاء لجميه الفهارس مره تقريبا كل اسبوع اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
muneer بتاريخ: 12 مايو 2007 تقديم بلاغ مشاركة بتاريخ: 12 مايو 2007 اخي الكريممن الواضح من structure for table and indexs أنـه هنـاك عدد كبير من لل INDEXفـهناك table واحد فقط وفيه 11 Index ومن 11 Index هناك 5 منهم composite وكثير من الاعمدة مشتركه في اكثر من INDEX مثلا العامود DOC_DATE .... ولهذا فأنك اساءة أستخدام INDEXفأن هذا العدد من index أكيد سوف يحتاج الى space وأيضا سوف تتأخير عمليات DML على هذا table.فيجب ان تعيد system analyzes for your system اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
امجد الحمادي بتاريخ: 3 يونيو 2007 تقديم بلاغ مشاركة بتاريخ: 3 يونيو 2007 مشكـور يا اخ وليد اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
Recommended Posts
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.