关于手动删除Oracle数据数据,导致Oracle无法连接处理过程

首先使用是使用: sysdba登录   sqlplus / as sysdba

在sql命令行中输入alter database open;

这个时候会报类似“ORA-01157: 无法标识/锁定数据文件 12 - 请参阅 DBWR 跟踪文件ORA-01110: 数据文件 12: ‘E:\DBF\A.DBF‘”的错误。

这是因为物理上删除了A.DBF文件,但是在oracle系统中关联记录并没有删除。所以我们接下来做的就是使用“alter database datafile ‘E:\DBF\A.DBF‘ offline drop;”语句删除oracle系统中的关联记录。

再次进行alter database open;操作,知道不报错为止即可。

时间: 2024-11-10 11:36:10

关于手动删除Oracle数据数据,导致Oracle无法连接处理过程的相关文章

oracle 11g 手动删除表空间文件导致数据库报错处理方法

简单说下原因:当时图方便没进数据库,直接在datafile目录下删除了表空间对应的数据文件 导致后来数据库报错,并且不能删除表空间 错误如下:ORA-01116:error in opening database ****ORA-01110:data file 54:'/home3/datafile/arrange/NewArrange.dbf'ORA-27041:unable to open fileLinux Error:2: No Such file or directoryAdditio

Oracle使用游标删除所有用户数据表中的所有记录脚本

应用场景:因为数据库中的数据涉及机密信息,希望一次性能删除掉所有数据,只保留数据表结构,供新项目开发程序用 测试结果:经查询已删除所有数据 存在问题:数据表如果存在外键的话下面脚本可能执行不成功,请自行删除或者过滤掉该表,见下图 操作办法:直接将下面的脚本内容复制到PQSQL中执行即可 --Oracle使用游标删除所有用户数据表中的所有记录脚本 declare mystring NVARCHAR2(1000):=''; --定义要输出的字符串变量 cursor mycursor is --定义游

oracle 删除表、数据

truncate ddl语句,删除表中数据,速度要比delete快:且所有自增字段重新开始计数:删除数据保留表结构:删除的数据不进入rollback segment,无法恢复.例: truncate table emp_tmp; drop    ddl语句,删除和该表相关的所有信息,包括表结构.数据. delete    dml语句,删除表中数据,但是并不删除表结构.

ORACLE 删除重复的数据

内容转自:https://www.cnblogs.com/zfox2017/p/7676237.html 查询及删除重复记录的SQL语句 1.查找表中多余的重复记录,重复记录是根据单个字段(Id)来判断 select Id from 表 group byId having count(Id) > 1  --(查找表中那个字段是重复的) select * from 表 where Id in (select Id from 表 group byId having count(Id) > 1) 

oracle学习-数据迁移

如果只是迁移表空间或者数据文件,可以先将表空间或者数据文件offline之后移动位置,并通过 alert database rename 和 alter tablespace rename 将位置变化写入控制文件即可 例 迁移数据文件 ALTER DATABASE DATAFILE '所要迁移的数据文件' OFFLINE; 拷贝到新位置 ALTER DATABASE RENAME FILE '索要迁移的数据文件' TO '新位置的数据文件'; 介质恢复 RECOVE DATAFILE '新位置的

手动删除oracle数据库

oracle数据库sqldatabaseloggingfile –===================== – 手动删除oracle数据库 –===================== 在很多情况下,或无法使用dbca工具的时候,我们需要手动来删除数据库.对此,可以借助drop database命令来实现,下面的描述中给出手动删除数据库 的具体步骤,包含文件系统数据库以及ASM数据库.环境:Oracle Enterprise Linux 5.4 + Oracle 10g R2 . 一.手动删除

Oracle:其他数据对象(序列,索引,同义词)

1.序列(sequence) 序列:可供多个用户来产生唯一数值的数据库对象集合 自动提供唯一数值 共享对象 主要用于主键自增 将序列值装入内存可以提高访问效率 创建: CREATE SEQUENCE sequence increment by n start with n maxvalue n | nomaxvalue minvalue n | no maxvalue cycle | nocycle cache | nocache 查询序列: 查询数据字典视图 USER_SEQUENCES 获取

Oracle大数据SQL语句优化

1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引. 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描, 如: select id from t where num is null    可以在num上设置默认值0,确保表中num列没有null值,然后这样查询: select id from t where num=0 3.应尽量避免在 where 子句中使用!=或<>操作符,否则

oracle 误删数据的恢复

误删数据的恢复 oracle恢复删除的数据 分为两种方法:scn和时间戳两种方法恢复. 一.通过scn恢复删除且已提交的数据 1.获得当前数据库的scn号 select current_scn from v$database; (切换到sys用户或system用户查询) 查询到的scn号为:1499223 2.查询当前scn号之前的scn select * from 表名 as of scn 1499220; (确定删除的数据是否存在,如果存在,则恢复数据:如果不是,则继续缩小scn号) 3.恢