1、查询oracle本次修改的数据文件及其编号。SQL语句如下:select file#,name from v$datafile;执行后可以看到本次要修改的SXSJ1的文件对应的编号为:17
2、查找该数据文件的最大块号。语句如下:select max(block_id) from dba_extents where file_id=17;查询到的最大块为:2205952
3、显示SXSJ表空间每个数据块的大小。语句如下: select tablespace_name,blocK_size,status,contents from dba_tablespaces where tablespace_name='SXSJ'数据库中得到的结果为8192,就是8K。
4、计算该数据块占用的物理空间语句如下:select 2205952*8/1024 from dual;执行结果为:17234,就是16个G左右PS这里的2205952就是步骤②中的结果
5、然后我们知道目前用了16G多,我们就可以把数据文件大小Resize到16G多一点,就到20G吧。数据文件修改文件大小傥态尬锪语句如下:ALTER DATABASE DATAFILE 'D:\app\Administrator\oradata\LZBDCSVR\SXSJ1' RESIZE 20G;执行后命令成功执行