سألني أحدهم عن كيفية معرفة حجم ال TABLESPACES وما تبقي منها من مساحة فارغة، وخطر على ذهني ان احدكم أيضا قد يحتاج لمعرفة اسماء وأحجام وما تبقى من مساحات فارغة في ال TABLESPACES لديه في قاعدة البيانات (وهي ملفات تكونها الأوراكل لكتابة البيانات والفهارس وكل محتويات قاعدة البيانات من معلومات تخص بياناتك)
1. شغل الأمر التالي لتوضيح الإسم والحجم الحقيقي على وحدة (ميجابايت) مع خانتين للكسر العشرى لكل tablespace
SELECT TABLESPACE_NAME,ROUND(SUM(BYTES)/(1024*1024),2) BFREE
FROM DBA_DATA_FILES
GROUP BY TABLESPACE_NAME;
2. شغل الأمر التالي لتوضيح الإسم والحجم المتبقي على وحدة (ميجابايت) مع خانتين للكسر العشرى لكل tablespace
SELECT TABLESPACE_NAME,ROUND(SUM(BYTES)/(1024*1024),2)MBFREE
FROM DBA_FREE_SPACE
GROUP BY TABLESPACE_NAME;
ملاحظات :-
1. التقسيم على (1024*1024) لأجل التحويل من البايت إلى يجابايت، 2. عملية ال ROUND للتخلص من الكسور العشرية الطويلة
3. عملية ال SUM لجمع كل ال DATA_TABLES التي تنتمي غلى نفس ال TABLESPACE في كيان واحد يجمع فيه مجموع القيم التي يحتويها كل منهم
مع تحياتي