Rumah > Artikel > pangkalan data > Oracle menyemak penggunaan ruang jadual dan menyelesaikan isu contoh penuh
Artikel ini membawa anda pengetahuan yang berkaitan tentang Oracle Masalah yang paling biasa dihadapi dalam penggunaan harian oralce ialah ruang jadual oralce penuh, data tidak boleh ditulis dan mesej ralat dilaporkan di bawah. Mari kita lihat, saya harap ia akan membantu semua orang.
Tutorial yang disyorkan: "Tutorial Video Oracle"
--查看数据库表空间文件 select * from dba_data_files;
--查看所有表空间的总容量 select dba.TABLESPACE_NAME, sum(bytes)/1024/1024 as MB from dba_data_files dba group by dba.TABLESPACE_NAME;
--查看数据库表空间使用率 select total.tablespace_name,round(total.MB, 2) as Total_MB,round(total.MB - free.MB, 2) as Used_MB,round((1-free.MB / total.MB)* 100, 2) || '%' as Used_Pct from ( select tablespace_name, sum(bytes) /1024/1024 as MB from dba_free_space group by tablespace_name) free, (select tablespace_name, sum(bytes) / 1024 / 1024 as MB from dba_data_files group by tablespace_name) total where free.tablespace_name = total.tablespace_name order by used_pct desc;
--查看表空间总大小、使用率、剩余空间 select a.tablespace_name, total, free, total-free as used, substr(free/total * 100, 1, 5) as "FREE%", substr((total - free)/total * 100, 1, 5) as "USED%" from (select tablespace_name, sum(bytes)/1024/1024 as total from dba_data_files group by tablespace_name) a, (select tablespace_name, sum(bytes)/1024/1024 as free from dba_free_space group by tablespace_name) b where a.tablespace_name = b.tablespace_name order by a.tablespace_name
--查看表空间使用率(包含临时表空间) select * from ( Select a.tablespace_name, (a.bytes- b.bytes) "表空间使用大小(BYTE)", a.bytes/(1024*1024*1024) "表空间大小(GB)", b.bytes/(1024*1024*1024) "表空间剩余大小(GB)", (a.bytes- b.bytes)/(1024*1024*1024) "表空间使用大小(GB)", to_char((1 - b.bytes/a.bytes)*100,'99.99999') || '%' "使用率" from (select tablespace_name, sum(bytes) bytes from dba_data_files group by tablespace_name) a, (select tablespace_name, sum(bytes) bytes from dba_free_space group by tablespace_name) b where a.tablespace_name = b.tablespace_name union all select c.tablespace_name, d.bytes_used "表空间使用大小(BYTE)", c.bytes/(1024*1024*1024) "表空间大小(GB)", (c.bytes-d.bytes_used)/(1024*1024*1024) "表空间剩余大小(GB)", d.bytes_used/(1024*1024*1024) "表空间使用大小(GB)", to_char(d.bytes_used*100/c.bytes,'99.99999') || '%' "使用率" from (select tablespace_name,sum(bytes) bytes from dba_temp_files group by tablespace_name) c, (select tablespace_name,sum(bytes_cached) bytes_used from v$temp_extent_pool group by tablespace_name) d where c.tablespace_name = d.tablespace_name ) order by tablespace_name
--查看具体表的占用空间大小 select * from ( select t.tablespace_name,t.owner, t.segment_name, t.segment_type, sum(t.bytes / 1024 / 1024) mb from dba_segments t where t.segment_type='TABLE' group by t.tablespace_name,t.OWNER, t.segment_name, t.segment_type ) t order by t.mb desc
alter database datafile ‘...\system_01.dbf' autoextend on; alter database datafile ‘...\system_01.dbf' resize 1024M;
alter tablespace SYSTEM add datafile '/****' size 1000m autoextend on next 100m;
0RA-03217: Pilihan tidak sah untuk menukar TEMPORARY TABLESPACE
Penyelesaian: tukar fail data kepada tempfile
alter tablespace TEMP01 add tempfile'/****' size 1000m autoextend on next 100m;
Untuk menyelesaikan masalah penggunaan penuh ruang jadual sementara temp
ruang jadual sementara Tujuan utama adalah untuk menyediakan ruang pengkomputeran sementara apabila pangkalan data melakukan operasi seperti operasi pengisihan, mengurus indeks dan mengakses pandangan Sistem akan membersihkan secara automatik selepas operasi selesai, tetapi kadangkala kami menghadapi segmen sementara yang tidak dilepaskan dan ruang meja TEMP hampir penuh;
menyebabkan ruang meja sementara meningkat terutamanya dalam situasi berikut:
1. susunan mengikut atau kumpulan mengikut (akaun isihan cakera untuk bahagian utama) ;
2 3. operasi yang berbeza; .
Penyelesaian 1: Gunakan kaedah di atas untuk menambah fail ruang jadual untuk temp
Penyelesaian 2: Apabila ruang sumber pelayan terhad, sediakan semula ruang jadual sementara baharu untuk menggantikan semasa ruang meja
Lampiran: Semak sama ada ruang jadual mempunyai keupayaan untuk mengembangkan secara automatikTutorial yang disyorkan: "
Tutorial Video Oracle"
Atas ialah kandungan terperinci Oracle menyemak penggunaan ruang jadual dan menyelesaikan isu contoh penuh. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!