Oracle对表空间操作的sql
管理員給用戶(hù)增加不限制表空間權(quán)限
grant unlimited tablespace to 用戶(hù);
查看表空間使用情況
SELECT a.tablespace_name "表空間名", total "表空間大小", free "表空間剩余大小", (total - free) "表空間使用大小", total / (1024 * 1024 * 1024) "表空間大小(G)", free / (1024 * 1024 * 1024) "表空間剩余大小(G)", (total - free) / (1024 * 1024 * 1024) "表空間使用大小(G)", round((total - free) / total, 4) * 100 "使用率 %" FROM (SELECT tablespace_name, SUM(bytes) free FROM dba_free_space GROUP BY tablespace_name) a, (SELECT tablespace_name, SUM(bytes) total FROM dba_data_files GROUP BY tablespace_name) b WHERE a.tablespace_name = b.tablespace_name;
? ? ?select username,default_tablespace from user_users;
?
查看該用戶(hù)下所有的表:
? ? ?select * from user_tables;
?
查看所有表 名稱(chēng)、路徑、是否自動(dòng)增長(zhǎng):
? ? ?select tablespace_name,file_name,autoextensible from dba_data_files;
?
修改表空間自動(dòng)增長(zhǎng)屬性:
? ? ?alter database datafile '表空間路徑' autoextend on;
? ? ? ? ?可以再次執(zhí)行前一個(gè)查詢(xún),是否成功;表空間自增長(zhǎng)的優(yōu)劣,各位自查。
?
修改大小:
? ? ?Alter database datafile ‘表空間路徑’resize 2000m;
?
查看當(dāng)前的連接數(shù):
SQL> select count(*) from v$session;
?
查看最大的進(jìn)程數(shù):
SQL> show parameter processes;
?
?
查看最大連接數(shù):
SQL> show parameter sessions;
--刪除空的表空間,但是不包含物理文件
drop tablespace tablespace_name;
--刪除非空表空間,但是不包含物理文件
drop tablespace tablespace_name including contents;
--刪除空表空間,包含物理文件
drop tablespace tablespace_name including datafiles;
--刪除非空表空間,包含物理文件
drop tablespace tablespace_name including contents and datafiles;
--如果其他表空間中的表有外鍵等約束關(guān)聯(lián)到了本表空間中的表的字段,就要加上CASCADE CONSTRAINTS
drop tablespace tablespace_name including contents and datafiles CASCADE CONSTRAINTS;
----------------如果表空間不足的解決方法--------
【解決辦法-原因一】
只要將表空間設(shè)置為足夠大,并設(shè)置為自增長(zhǎng)即可。
1、擴(kuò)展表空間 ?
alter database datafile 'D:\ORACLE\PRODUCT\ORADATA\TEST\USERS01.DBF' resize 50m;
? 注:50m,是表空間大小,可以根據(jù)實(shí)際需要加大,但最大不得超過(guò)32G
2、自動(dòng)增長(zhǎng)?
alter database datafile 'D:\ORACLE\PRODUCT\ORADATA\TEST\USERS01.DBF' autoextend on next 50m maxsize 500m maxsize 是每次增加最大500m的數(shù)據(jù)塊
【解決辦法-原因二】2016-03-24用這個(gè)方法解決的
因?yàn)楸砜臻g中的數(shù)據(jù)文件已經(jīng)足夠大(達(dá)到32G),所以,這時(shí)僅僅增加表空間大小是不行的。
這個(gè)時(shí)候,我們可以增加該表空間的數(shù)據(jù)文件,這樣表空間的大小即變?yōu)?4G了。
ALTER TABLESPACE aaaADD DATAFILE 'E:\APP\ORACLE11GR2\ORADATA\ORCL\aaa_DATA02.DBF'SIZE 32767M;
總結(jié)
以上是生活随笔為你收集整理的Oracle对表空间操作的sql的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: cython加密代码python_利用C
- 下一篇: Android应用检查更新下载安装打开