ORDER BY TABLESPACE_NAME,FILE_NAME;
2.查看各表空间分配情况。
select tablespace_name, sum(bytes) / 1024 / 1024 from dba_data_files
group by tablespace_name;
3.查看各表空间空闲情况。
select tablespace_name, sum(bytes) / 1024 / 1024 from dba_free_space group by tablespace_name;
4.更改数据表大小(10G)
alter database datafile '/ora/oradata/radius/undo.dbf' resize 10240m;
5.设置表空间不足时自动增长
5.1查看表空间是否自动增长
SELECT FILE_NAME,TABLESPACE_NAME,AUTOEXTENSIBLE FROM dba_data_files;
5.2 设置表空间自动增长
ALTER DATABASE DATAFILE 'c:\SmartDB01.ora' AUTOEXTEND ON;//打开自动增长
ALTER DATABASE DATAFILE 'c:\SmartDB01.ora' AUTOEXTEND ON NEXT 200M ;//每次自动增长200m
ALTER DATABASE DATAFILE 'c:\SmartDB01.ora' AUTOEXTEND ON NEXT 200M MAXSIZE 1024M;//每次自动增长200m,数据表最大不超过1G
===============================--1查看表空间已经使用的百分比
select a.tablespace_name,a.bytes/1024/1024 "Sum MB",(a.bytes-b.bytes)/1024/1024 "used MB",b.bytes/1024/1024 "free MB",round(((a.bytes-b.bytes)/a.bytes)*100,2) "percent_used"
from
(select tablespace_name,sum(bytes) bytes from dba_data_files group by tablespace_name) a,
(select tablespace_name,sum(bytes) bytes,max(bytes) largest from dba_free_space group by tablespace_name) b
where a.tablespace_name=b.tablespace_name
order by ((a.bytes-b.bytes)/a.bytes) desc
“Sum MB”表示表空间所有的数据文件总共在操作系统占用磁盘空间的大小
比如:test表空间有2个数据文件,datafile1为300MB,datafile2为400MB,那么test表空间的“Sum MB”就是700MB
“userd MB”表示表空间已经使用了多少
“free MB”表示表空间剩余多少
“percent_user”表示已经使用的百分比
--2比如从1中查看到MLOG_NORM_SPACE表空间已使用百分比达到90%以上,可以查看该表空间总共有几个数据文件,每个数据文件是否自动扩展,可以自动扩展的最大值。
- select file_name,tablespace_name,bytes/1024/1024 "bytes MB",maxbytes/1024/1024 "maxbytes MB" from dba_data_files
- where tablespace_name='MLOG_NORM_SPACE';
--3比如MLOG_NORM_SPACE表空间目前的大小为19GB,但最大每个数据文件只能为20GB,数据文件快要写满,可以增加表空间的数据文件
用操作系统UNIX、Linux中的df -g命令(查看下可以使用的磁盘空间大小)
获取创建表空间的语句:
- select dbms_metadata.get_ddl('TABLESPACE','MLOG_NORM_SPACE') from dual;
--4确认磁盘空间足够,增加一个数据文件
- alter tablespace MLOG_NORM_SPACE
- add datafile '/oracle/oms/oradata/mlog/Mlog_Norm_data001.dbf'
- size 10M autoextend on maxsize 20G
--5验证已经增加的数据文件
- select file_name,file_id,tablespace_name from dba_data_files
- where tablespace_name='MLOG_NORM_SPACE'
--6如果删除表空间数据文件,如下:
- alter tablespace MLOG_NORM_SPACE
- drop datafile '/oracle/oms/oradata/mlog/Mlog_Norm_data001.dbf'
备注: linux下查看磁盘剩余空间和文件夹大小
du -sm 文件夹
返回该文件夹总M数
更多功能查看:
df --help
du --help
du --help
用法:du [选项]... [文件]...
总结每个<文件>的磁盘用量,目录则取总用量。
-a, --all write counts for all files, not just directories
--apparent-size print apparent sizes, rather than disk usage; although
the apparent size is usually smaller, it may be
larger due to holes in (`sparse') files, internal
fragmentation, indirect blocks, and the like
-B, --block-size=SIZE use SIZE-byte blocks
-b, --bytes equivalent to `--apparent-size --block-size=1'
-c, --total produce a grand total
-D, --dereference-args dereference FILEs that are symbolic links
-H like --si, but also evokes a warning; will soon
change to be equivalent to --dereference-args (-D)
-h, --human-readable print sizes in human readable format (e.g., 1K 234M 2G)
--si like -h, but use powers of 1000 not 1024
-k like --block-size=1K
-l, --count-links count sizes many times if hard linked
-L, --dereference dereference all symbolic links
-P, --no-dereference don't follow any symbolic links (this is the default)
-0, --null end each output line with 0 byte rather than newline
-S, --separate-dirs do not include size of subdirectories
-s, --summarize display only a total for each argument
-x, --one-file-system skip directories on different filesystems
-X FILE, --exclude-from=FILE Exclude files that match any pattern in FILE.
--exclude=PATTERN Exclude files that match PATTERN.
--max-depth=N print the total for a directory (or file, with --all)
only if it is N or fewer levels below the command
line argument; --max-depth=0 is the same as
--summarize
--help 显示此帮助信息并离开
--version 显示版本信息并离开
du -smh oracle 查看文件夹的大小(oracle 文件夹名)