Ruang meja Oracle ialah bahagian logik pangkalan data dan unit terkecil untuk pemulihan pangkalan data Oracle Ia menampung banyak entiti pangkalan data, seperti jadual, paparan, indeks, kelompok, segmen rollback, segmen sementara, dll. Pangkalan data Oracle boleh mempunyai satu atau lebih ruang jadual, dan ruang jadual sepadan dengan satu atau lebih fail pangkalan data fizikal.
Persekitaran pengendalian tutorial ini: sistem Windows 7, versi Oracle 11g, komputer Dell G3.
Ruang meja Oracle (ruang meja) ialah konsep logik Fail data ialah apa yang sebenarnya menyimpan data. Pangkalan data Oracle boleh mempunyai satu atau lebih ruang jadual, dan ruang jadual sepadan dengan satu atau lebih fail pangkalan data fizikal.
Ruang jadual ialah unit terkecil untuk pemulihan pangkalan data Oracle, menempatkan banyak entiti pangkalan data, seperti jadual, paparan, indeks, kelompok, segmen rollback, segmen sementara, dsb.
1. Ciri ruang jadual Oracle:
(1) Kawal peruntukan cakera data pangkalan data
(2) Hadkan pengguna dalam ruang jadual Jumlah ruang cakera yang boleh digunakan;
(3) Ruang jadual mempunyai atribut dalam talian, luar talian, baca sahaja, tulis baca.
2. Klasifikasi ruang jadual:
Ruang jadual kekal: beberapa objek untuk disimpan secara kekal dalam pangkalan data, seperti jadual dan paparan , Prosedur tersimpan
Ruang jadual sementara: proses yang dilaksanakan di tengah-tengah operasi pangkalan data Selepas pelaksanaan, kandungan yang disimpan akan dikeluarkan secara automatik
Segmen (segmen) merujuk kepada ruang yang diduduki oleh fail data Nama biasa, atau koleksi ruang yang digunakan oleh objek pangkalan data boleh termasuk segmen jadual, segmen indeks, segmen rollback, segmen sementara, segmen cache, dsb.
Extent (Selang/Sambungan), sebarang blok berterusan yang diperuntukkan kepada objek (seperti jadual) dipanggil selang juga dipanggil sambungan, kerana apabila ia habis selang yang diperuntukkan, ia akan Apabila rekod baru dimasukkan, selang baru mesti diperuntukkan (iaitu, beberapa blok dilanjutkan sebaik sahaja selang diperuntukkan kepada objek (jadual, indeks dan kelompok), selang tidak boleh diperuntukkan kepada objek lain.
Rajah struktur
Fail data, segmen, lanjutkan gambar rajah perhubungan
select * from dba_data_files; --describes database files 数据文件信息 select * from dba_temp_files; --describes all temporary files (tempfiles) in the database 临时数据文件信息 select * from dba_free_space; --describes the free extents in all tablespaces in the database 数据库中所有表空间中的空闲扩展区 select * from dba_segments; --describes the storage allocated for all segments in the database 数据库中的所有段分配的存储
1
--语法: create [temporary] tablespace tablespace_name tempfile|datafile ‘xx.dbf’ size xx; --创建临时表空间时,加上temporary关键字;
Apabila ruang jadual tertentu habis, operasi sisipan tidak lagi boleh dilakukan pada jadual pangkalan data. Pada masa ini kita Jika anda perlu mengembangkan ruang jadual, anda boleh mengembangkan ruang jadual dengan menambah fail fail data.
select f.* from dba_data_files f where f.tablespace_name='MLT';--查看表空间信息 alter tablespace MLT --表空间名 add datafile '/home/oracle/oradata/crm/mlt04.dbf' --datafile文件路径 size 100M --表空间大小 autoextend on --自动扩展
alter tablespace tablespace_name online|offline;--表空间是脱机时不可用,默认是联机的
drop tablespace tablespace_name[including contents]; --including contents 表示删除表空间包括datafile数据文件,不加则不删除相关数据文件; --删除数据文件时,不能删除表空间当中第一个数据文件,如果要删除就需要删除整个表空间。
Tutorial yang disyorkan: "
--查询表空间使用情况SELECT Upper(F.TABLESPACE_NAME) "表空间名", D.TOT_GROOTTE_MB "表空间大小(M)", D.TOT_GROOTTE_MB - F.TOTAL_BYTES "已使用空间(M)", To_char(Round(( D.TOT_GROOTTE_MB - F.TOTAL_BYTES ) / D.TOT_GROOTTE_MB * 100, 2), '990.99') || '%' "使用比", F.TOTAL_BYTES "空闲空间(M)", F.MAX_BYTES "最大块(M)"FROM (SELECT TABLESPACE_NAME, Round(Sum(BYTES) / ( 1024 * 1024 ), 2) TOTAL_BYTES, Round(Max(BYTES) / ( 1024 * 1024 ), 2) MAX_BYTES FROM SYS.DBA_FREE_SPACE GROUP BY TABLESPACE_NAME) F, (SELECT DD.TABLESPACE_NAME, Round(Sum(DD.BYTES) / ( 1024 * 1024 ), 2) TOT_GROOTTE_MB FROM SYS.DBA_DATA_FILES DD GROUP BY DD.TABLESPACE_NAME) DWHERE D.TABLESPACE_NAME = F.TABLESPACE_NAME--查询表空间的空闲扩展区select tablespace_name, count(*) AS extends,round(sum(bytes) / 1024 / 1024, 2) AS 大小/MB,sum(blocks) AS blocks from dba_free_space group BY tablespace_name;--查询表空间的总容量select tablespace_name, sum(bytes) / 1024 / 1024 as MB from dba_data_files group by tablespace_name;--查询表空间使用率SELECT total.tablespace_name, Round(total.MB, 2) AS 总量/MB, Round(total.MB - free.MB, 2) AS 已使用/MB, Round(( 1 - free.MB / total.MB ) * 100, 2) || '%' AS 使用率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) totalWHERE free.tablespace_name = total.tablespace_name;
Atas ialah kandungan terperinci Apakah ruang meja oracle. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!