关闭
侧边栏

如何恢复 SET UNUSED 的 COLUMN

Posted by dbtan on 十二月 19th, 2016

通过上篇文章,我们已经基本了解 标记列为未使用 (Marking Columns Unused) 了。

我们知道,在 SET UNUSED 后 其实数据并未真的被删除,若这时又想恢复该列,有办法吗?

接下来,我们来实验一下。

如何修复被标记为 UNUSED 的字段

0. 实验环境 Oracle 11.2.0.4

SQL
16:49:06 sys
... ...
<阅读全文>

标记列为未使用 (Marking Columns Unused)

Posted by dbtan on 十二月 16th, 2016

Marking Columns Unused 基本操作步骤

1. 标记列为未使用

SQL
ALTER TABLE <table_name> SET UNUSED (<column_name>);

2. 然后在数据库空闲时,再删除列

SQL
... ...
<阅读全文>

How To Automate Cleanup Of Dead Connections And INACTIVE Sessions [ID 206007.1]

Posted by dbtan on 九月 15th, 2010

How To Automate Cleanup Of Dead Connections And INACTIVE Sessions [ID 206007.1]


Modified 25-JUN-2009     Type HOWTO     Status PUBLISHED

PURPOSE
-------This note explains the difference between a dead connection and an
INACTIVE session in v$session.  It also discusses the mechanisms
provided to automate the cleanup of each.SCOPE & APPLICATION
-------------------This note is intended for any DBA who wants to automate the cleanup of
dead conn
... ...
<阅读全文>

Oracle 10g/11g Latch机制的变化

Posted by dbtan on 五月 13th, 2010

Oracle 10g/11g Latch机制的变化:
前面曾经提到,Oracle的Latch机制采用spin来进行持有CPU的不断尝试,虽然通常Latch的获取会非常快(一般在微秒级),但是很多时候Latch竞争还是会引发极为严重的CPU争用。所以从Oracle 10g开始,Oracle尝试引入一种新的机制来代替传统的Latch机制,这就是Mutex机制,也就是互斥机制。和Latch相比,一个Mutex Get大约仅需要30~35个指令,而Latch Get则需要大约150~200个指令,同时在大小上,每个Mutex仅占大约16Bytes空间,而Latch在10gR2中要占用大约112Bytes空间。

在Oracle 10.2..0.1中一个新的参数_kks_use_mutex_pin被引入,不过缺省值为False:

sys@TQGZS> sel
... ...
<阅读全文>

Latch Free(闩锁释放)

Posted by dbtan on 五月 13th, 2010

Latch Free(闩锁释放):
Latch Free通常被称为闩锁释放,这个名称常常引起误解,实际上我们应该在前面加上一个“等待”(wait),当数据库出现这个等待时,说明有进程正在等待某个Latch被释放,也就是waiting latch free。

Latch是一种低级排队(串行)机制,用于保护SGA中共享内存结构。Latch就像是一种快速被获取和释放的内存锁,用于防止共享内存结构被多个用户同时访问。其实不必把Latch想得过于复杂,Latch通常就是操作系统利用内存中的某个区域,通过设置变量为0或非0,来表示Latch是否已经被取得,大多数操作系统,是使用TEST AND SET的方式来完成Latch检查或持有的。

为了快速地获得一个直
... ...
<阅读全文>


Copyright © 2009 - 2018 https://www.dbtan.com. All rights reserved.    京ICP备13006977号-1