2 原因可能是Oracle没有足够的权限来访问文件或文件已经被其他进程锁定,导致无法打开。
3 可以尝试检查文件的权限设置、确认文件是否被其他进程占用、检查 *** 作系统日志等方法来解决该问题。
如果问题依旧存在,可以尝试重新创建一个新的数据文件来替代原有的文件。
一个是建立表空间时创建多个数据文件
CREATE TABLESPACE tablespace_name
DATAFILE
data1...
data2...
另外就是新增数据文件到现有的表空间下
ALTER TABLESPACE tablespace_name ADD
DATAFILE
data3...
查看表空间对应数据文件所在的位置
SQL>SELECT tablespace_name,file_name FROM dba_data_files where TABLESPACE_NAME = '&tablespace_name'
--如果是查临时表空间,dba_data_files换DBA_TEMP_SPACE
TABLESPACE_NAME FILE_NAME
------------------------------ --------------------------------------------------------------------------------
USERS D:\ORACLE11G\ORACLE_11G\ORADATA\ORCL\USERS01.DBF
2.假设我要对USERS表空间加数据文件,为方便管理数据文件尽量放在同一个目录下。
ALTER TABLESPACE users ADD DATAFILE 'D:\ORACLE11G\ORACLE_11G\ORADATA\ORCL\USERS02.DBF' SIZE 10M AUTOEXTEND ON NEXT 5M MAXSIZE 20M
参数说明:SIZE 数据文件初始大小为10Mb, AUTOEXTEND ON自动扩展,下一个extend的大小为5m,数据文件最大设置为20MB。再去搜索第一步的sql就会发现user表空间数据文件增加了一个。
临时表空间增加数据文件:
ALTER TABLESPACE TEMP ADD TEMPFILE 'D:\ORACLE11G\ORACLE_11G\ORADATA\ORCL\TEMP02.DBF' SIZE 100M
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)