بتاريخ: 24 أبريل 201411 سنة comment_249587 ORA-01652: unable to extend temp segment by 128 in tablespace TEMP تظهر هذه المشكلة عند تنفيذ اجراء معين على قاعدة البيانات تخرج الرسالة تقديم بلاغ
بتاريخ: 24 أبريل 201411 سنة comment_249589 أولا يجب التأكد من وجود مساحة كافية علي نفس البارتيشن الموجوده عليه قاعده البيانات و الفكرة هي إيجاد مسار قاعده البيانات و بالأخص tablespace DBF و تعديل حجمه بالكفاية راجع هذه http://docs.oracle.com/cd/B28359_01/server.111/b28310/dfiles003.htm#ADMIN11423 تم تعديل 24 أبريل 201411 سنة بواسطة Darwiesh.fci تقديم بلاغ
بتاريخ: 24 أبريل 201411 سنة comment_249608 السلام عليكم نفذ الجملة التالية: SELECT * FROM DBA_DATA_FILES; سيظهر لديك جميع الـ data file الموجودة: ثم نفذ الجملة التالية مع تغيير إسم الـ Data File: ALTER DATABASE DATAFILE 'D:\ORACLEXE\ORADATA\XE\SYSTEM.DBF' RESIZE 2048M; تقديم بلاغ
بتاريخ: 27 أبريل 201411 سنة comment_249781 اخي احمد شكرا لك على اجتهادك ولكن مشكلة الاخ في ال temp tablespace وليس system tablespace تقديم بلاغ
بتاريخ: 28 أبريل 201411 سنة comment_249798 اخي احمد شكرا لك على اجتهادك ولكن مشكلة الاخ في ال temp tablespace وليس system tablespace لمعرفة المسار والحجم SELECT NAME, BYTES/1024/1024 TEMP_SIZE FROM V$TEMPFILE; ومن ثم قم بزيادة الحجم عن طريق الاتي alter database tempfile 'D:\APP\FINPRD\TEMP01.DBF' resize 1500M; تقديم بلاغ
بتاريخ: 29 أبريل 201411 سنة كاتب الموضوع comment_249836 استاذي الفاضل ملف TEMP01.DBF الموجود عندي سعته 31.9 GB او (34,358,697,984 bytes) كم ازيد عليه تقديم بلاغ
بتاريخ: 29 أبريل 201411 سنة comment_249838 يبدو انه حجم ال TEMP كبير جدا ولا استطيع مجرد اخبارك بأن تزيد كذا او كذا, اذا دعنا نبحث ماهي اسباب المشكلة ومتى تحدث وهل تستطيع تجنب حدوثها ام لا. ولمعرفة المساحة المتخدمة من TEMP select TABLESPACE_NAME, BYTES_USED/1024/1024 USED, BYTES_FREE/1024/1024 FREE from V$TEMP_SPACE_HEADER; لعرض محتويات ال TEMP select * from V$TEMPSEG_USAGE where USERNAME not in ('SYSMAN'); كما ارجو تزويدنا بنسخة اوراكل المستخدمة لديط. تقديم بلاغ
بتاريخ: 3 مايو 201411 سنة كاتب الموضوع comment_249997 يبدو انه حجم ال TEMP كبير جدا ولا استطيع مجرد اخبارك بأن تزيد كذا او كذا, اذا دعنا نبحث ماهي اسباب المشكلة ومتى تحدث وهل تستطيع تجنب حدوثها ام لا. ولمعرفة المساحة المتخدمة من TEMP select TABLESPACE_NAME, BYTES_USED/1024/1024 USED, BYTES_FREE/1024/1024 FREE from V$TEMP_SPACE_HEADER; لعرض محتويات ال TEMP select * from V$TEMPSEG_USAGE where USERNAME not in ('SYSMAN'); كما ارجو تزويدنا بنسخة اوراكل المستخدمة لديط. عندي تطبيق هذا الامر اخي العزيز select TABLESPACE_NAME, BYTES_USED/1024/1024 USED, BYTES_FREE/1024/1024 FREE from V$TEMP_SPACE_HEADER; كانت النتيجة كالتالي TABLESPACE_NAME USED FREE ------------------------------ ---------- ---------- TEMP 32767 0 وعند تطبيق select * from V$TEMPSEG_USAGE where USERNAME not in ('SYSMAN'); كانت النتيجة USERNAME USER SESSION_ADDR ------------------------------ ------------------------------ ---------------- SESSION_NUM SQLADDR SQLHASH SQL_ID ----------- ---------------- ---------- ------------- TABLESPACE CONTENTS SEGTYPE SEGFILE# SEGBLK# ------------------------------- --------- --------- ---------- ---------- EXTENTS BLOCKS SEGRFNO# ---------- ---------- ---------- loof loof 000007FF2C1690F8 8 000007FF25872608 2608789908 8mkvraydrxycn TEMP TEMPORARY LOB_DATA 201 4193929 1 128 1 تقديم بلاغ
بتاريخ: 3 مايو 201411 سنة comment_250001 كما تعلم اخي موسى ان ال Temporary Tablespace يستخدم في الحالات البينية فقط مثل (عمليات ترتيب Sort كبيرة , عمليات التجزئة او Hash Operations) فأي العمليات هي التي يحصل عندها الخطأ المذكور. كما اعلم أخي ان 32 جيجا يعتبر حجم كبير جدا فأعتقد ان Temp Datafile is Auto Extend وهذا غير مستحسن. وذلك بسبب انه يحتمل ان يكون هنالك تعليمة كبيرة جدا من حيث الترتيب Sort وتشتغل لعدة ساعات فهذا قد يسبب كبر غير مرغوب فيه في Tempوهذا ما اعتقد انه حصل في حالتك وادى الى هذا الحجم. ارجو منك تزويدي بمعلومات عن ال Temp select * from dba_temp_files; ومعلومات عن الاجراء المسبب لهذا الخطأ. تحياتي, حامد تقديم بلاغ
بتاريخ: 3 مايو 201411 سنة كاتب الموضوع comment_250008 FILE_NAME -------------------------------------------------------------------------------- FILE_ID TABLESPACE_NAME BYTES BLOCKS STATUS ---------- ------------------------------ ---------- ---------- --------- RELATIVE_FNO AUT MAXBYTES MAXBLOCKS INCREMENT_BY USER_BYTES USER_BLOCKS ------------ --- ---------- ---------- ------------ ---------- ----------- D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORA9I\TEMP01.DBF 1 TEMP 3.4359E+10 4194176 AVAILABLE 1 YES 3.4360E+10 4194302 80 3.4358E+10 4194048 اخي تخرج هذه الرسالة عند ترحيل بيانات باعداد سجلات كبيرة تقديم بلاغ
بتاريخ: 3 مايو 201411 سنة comment_250024 يبدو ان العملية كبيرة وتحتاج الى مساحة اضافية. فبما ان ال TEMP قام بحجز البيانات ولم يحررها مرة اخرى وبذلك تظهر جميع المساحة مستخدمة, فأقترح عليك عمل التالي: انشاء temp جديد ومن ثم جعله افتراضية وبعد ذلك حذف ال temp القديم 1- قم بإنشاء temp جديد بمساحة 20G والسماح له بالزيادة الى 50G. CREATE TEMPORARY TABLESPACE TEMP2 TEMPFILE 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORA9I\TEMP02.DBF'SIZE 20G AUTOEXTEND ON MAXSIZE 50G; 2- تغيير ال temp2 الى الافتراضي ALTER DATABASE DEFAULT TEMPORARY TABLESPACE TEMP2; 3- حذف ال TEMP القديم DROP TABLESPACE TEMP INCLUDING CONTENTS AND DATAFILES; اخيرا قم بمراقبة الزيادة في حجم الTEMP لكي تعرف ماهو الحجم المناسب له واعلمنا بالنتائج. تحياتي, حامد تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.