不以规矩 不成方圆

我在多年以前写下的DBA四大守则,其中的一条是“不以规矩,不成方圆”。任何一个企业的运维环境,都需要基本的规矩和准则,有所遵守、有所规范,才能保持长治久安,不出或少出低级错误和纰漏。运维的核心就应当是去保障生产能力,维护生产环境的稳定、安全和高效运行。

前一段在“恩墨微信大讲堂”中,有朋友遇到这样一个问题,一个数据文件处于RECOVER状态,然后尝试去删除这个文件,遇到了错误,表名数据文件中存在对象约束,不能被删除。

然而在检查时发现Unique和Primary的约束并不存在,这是为什么呢?

可是等等,不要被这个问题转移了视线,我们重新来审视一下,这个要被删除的表空间文件是什么?

一个奇怪的名字跃入眼帘:E:JYB.DBF 。而且这个文件被创建在dbs目录下(为什么在这个目录?留一个问题在这里)。

这显然是因为(也许不那么显然):用户用Windows的命令法,想在E:分区去建一个文件,然而出错,文件被扔到了dbs目录。

这个数据的规范性很明显是不足的,可能这个文件是某个开发人员远程创建出来的,甚至DBA根本不知道存在这个文件,还有可能就直接删除了。

一个企业的核心数据库:数据库文件的创建、备份、维护都应该具有明确的规则

那么到底是为什么删除不了呢?

追查发现在该表空间存在很多临时段,于是用户猜测是有人将临时表建立到了这个表空间:

那么真的是这样么?

作为DBA的一个基本常识是:临时段不仅仅只在临时表或临时表空间中存在,很多中间操作以临时段作为过度。比如创建索引,在完成之前,数据段的状态是临时的,创建完成之后才更改为永久的。

我以前写过一个简短的记录,在一个IMP的数据导入过程中,导入完成之前大量数据以临时段存储(示例含有LOB对象),而且Oracle以 数据文件号+开始块号 来命名这些临时段(直接截图了):

即便是一个简单的案例,串联起来都会有很有意思的故事和知识。知其然之后才能够胸有成竹。

原文发布于微信公众号 - 数据和云(OraNews)

原文发表时间:2015-10-14

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏北京马哥教育

【Zabbix】中小型企业Zabbix监控实战之告警大全

转载声明:本文转载自「数睿技术」 前言 本篇文章介绍目前常用的告警方式,以及对功能实现做讲解。本篇文章中出现的代码片段可以回复"监控脚本"获取完整代码。 ...

32910
来自专栏北京马哥教育

一种经典的网游服务器架构

? 这个图是一个区的架构图,所有区的架构是一样的。上面虚线框的ServerGroup和旁边方框内的架构一样。图上的所有x N的服务器,都是多台一起的。红线,绿...

2614
来自专栏IT大咖说

探索嵌入式PHP与C/C++结合的无限种可能

内容来源:2018 年 5 月 20 日,腾讯企点开放平台技术负责人熊月在“PHPCon China 2018 技术峰会”进行《嵌入式PHP的探索实践》演讲分享...

662
来自专栏喔家ArchiSelf

老曹眼中的Linux基础

Linux 几乎无处不在,不论是服务器构建,还是客户端开发,对操作系统的基本理解和基础技能的掌握对全栈来说都是必备的。

753
来自专栏大魏分享(微信公众号:david-share)

SDS那么火,你家有没有?

近两年,SDS挺火。做SDS的厂商也很多,如VMware的vSAN,Nutanix,传统存储厂商EMC也有自己的SDS产品。有调查机构显示,SDS在未来将超...

3386
来自专栏张善友的专栏

系统性能优化一例

上周接到一位从事电子产品生产的大学同学的QQ说他的一个ERP系统有问题,帮他看看,周末他过来详细的了解了一下情况:周一到周五使用的用户数是10-20个人,系统慢...

1705
来自专栏杨建荣的学习笔记

数据迁移中的几个问题总结

总结一下昨晚在数据迁移前线奋战碰到的一些问题,虽然总体来说是按照预定的计划完成,并且提前完成,但是哪怕一丁点儿的操作都会导致一些严重的影响。 总体来...

3227
来自专栏PHP技术

Apache与Nginx的优缺点比较

Apache与Nginx的优缺点比较 1、nginx相对于apache的优点: 轻量级,同样起web 服务,比apache 占用更少的内存及资源 抗并发,...

2956
来自专栏互联网杂技

巨头们关注的实时Web:发展与相关技术

我们生活在一个实时(real-time)的世界中,因此Web的最终最自然的状态也应当是实时的。用户需要实时的沟通、数据和搜索。我们对互联网信息实时性的要求也越来...

2718
来自专栏Golang语言社区

转--Stackful 协程库 libgo(单机100万协程)

libgo 是一个使用 C++ 编写的协作式调度的stackful协程库, 同时也是一个强大的并行编程库。 设计之初是为高并发分布式Linux服务端程序开发提供...

4129

扫描关注云+社区