檢視表空間的使用情況
檢視各個表空間的資料檔案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) d
where d.tablespace_name = f.tablespace_name
orderby1
檢視sysaux表空間使用情況select t1.name, t2.name,round(t2.bytes / ( 1024 * 1024 ), 2) "大小(m)"
from v$tablespace t1, v$datafile t2
where t1.ts# = t2.ts#
order
by1,3
sql> select dbms_stats.get_stats_history_retention from dual;select *
from (select bytes, segment_name, segment_type, owner
from dba_segments
where tablespace_name = 'sysaux'
order
by bytes desc)
where rownum < 10```
執行以下語句 修改表資料檔案大小
database alteredget_stats_history_retention
---------------------------
31```
sql> exec dbms_stats.alter_stats_history_retention(15);
```pl/sql procedure
successfully
completed
```sql> select
min(snap_id),max
(snap_id)
from
dba_hist_snapshot;
```min(snap_id) max(snap_id)
------------ ------------
35044
35248
```sql> exec dbms_workload_repository.drop_snapshot_range(low_snap_id =>35044,high_snap_id => 35044+24);
```pl/sql procedure
successfully
completed
修改表資料檔案大小
```sql> alter
database
\administrator
\oradata
\xuejiayue
\xuejiayue01.dbf' resize 2048m;
sql>
database altered
\administrator
\oradata
\xuejiayue
\undotbs01.dbf' resize 2048m;
看看效率比較低的語句(
然後select executions , disk_reads, buffer_gets, round((buffer_gets-disk_reads)/buffer_gets,2) hit_radio, round(disk_reads/executions,2) reads_per_run,
sql_text from v$sqlarea where executions>0
and buffer_gets > 0
and (buffer_gets-disk_reads)/buffer_gets < 0.8
orderby4
desc;
優化相關的**
修改oracle資料庫的名字
最近閒來無事,決定修改一下資料庫的名字,記得曾經學過通過重建控制檔案來修改資料庫的名字,網上找了下也可以通過oracle自帶的nid修改資料庫的名字,不過這個方法有些麻煩,並且修改的資料庫名字不能帶 1,通過重建控制檔案修改資料庫名字。為了方便查詢trace檔案我們在進行備份控制檔案的時候我們可以標...
修改Oracle資料庫的大小
在簡歷資料庫的時候,不注意把資料庫設定大了,磁碟空間不夠,這時候就需要修改db檔案大小了 首先在plsql裡面用下面sql進行檢視 select file name as 資料檔案,tablespace name as 表空間名稱,autoextensible as 自動擴充套件,status as...
Oracle資料庫修改主鍵
一 資料表有主鍵但無主鍵約束名 先刪除之前的主鍵,後新增主鍵 a.alter table 表名 drop primary key b.alter table 表名 add primary key 想要更改的欄位名稱 二 資料表有主鍵也有主鍵約束名 1 刪除已有的主鍵約束名 a.若已知主鍵約束名 al...