其實這是從網上學來的,算不上很高深,怕自己忘記了,記下來。
為什麼要修改oracle臨時表空的大小呢?因為臨時表空所在的檔案系統沒有空間了。本來設定的是2g的臨時表空
針對這種情況,本來想用:alter database tempfile '/oradata/temp01.dbf' resize 1024m進行改變大小的。但在toad中看了一下minimum size,說最小也只能縮到2048m,也就是不能直接縮小了,上網查到乙個曲線救國的方法:
1.在其它有空間的地方新建乙個中轉的臨時表空
2.用alter database default temporary tablespace 語句把臨時表空指向新的臨時表空。
3.用drop tablespace把舊的臨時表空刪除
4.在原來的檔案系統上新建乙個小一點的臨時表空
5.再用alter database default temporary tablespace把臨時表空指向這個小一點的臨時表空。
6..用drop tablespace把中轉的臨時表空刪除。
實際方法如下:
1.新建乙個用於中轉的臨時表空:
create temporary tablespace temp2 tempfile
'/setup/temp02.dbf' size 2048m autoextend off
extent management local uniform size 1m;
2.把臨時表空指向中轉表空:
alter database default temporary tablespace temp2;
3.刪除原來的臨時表空:
drop tablespace temp including contents and datafiles;
4.在原來的檔案系統新建乙個小一點的臨時表空
create temporary tablespace temp tempfile
'/oradata/temp01.dbf' size 1024m autoextend off
extent management local uniform size 1m;
5.把臨時表空再指向新建好的表空:
alter database default temporary tablespace temp;
6.刪除用於中轉的表空:
drop tablespace temp2 including contents and datafiles;
以上在oracle9i環境中通過。
如果想看看臨時表空的表檔案放在**,可以在tablespace中看,也可以在sys使用者的檢視v_$tempfile(或者是v$tempfile)中看。
Oracle 刪除其他Session中的臨時表
因為表kol xx fin050 temp 為臨時表,而且有其他session正在使用。處理步驟 1 先從 dba objects user objects中查詢到該錶的object id select object id from dba objects where object name upp...
關於解決oracle資料庫insert 臨時辦法
由於專案需要使用oracle資料庫,之前遇到乙個insert不成功。原以為官方會解決,但是到目前應該還是沒解決。以下是我自己的解決辦法,這樣修改不清楚有什麼不良效果,但能實現功能 mysql不合適 thinkphp library think db query.php 中的insert public...
在oracle中,修改主鍵
3 修改主鍵 第一步 增加列key no alter table tb zhaozhenlong add key no int 第二部 給key no更新值 update tb zhaozhenlong set key no rownum commit 第三步 將key no置為非空 alter t...