- 博客(19)
- 收藏
- 关注
转载 ORACLE归档模式与非归档模式
一、 什么是ORACLE归档模式 ORACLE数据库有联机重做日志, 这个日志是记录对数据库所做的修改, 比如插入、删除、更新数据等, 对这些操作都会记录在联机重做日志里。一般数据库至少要有2个联机重做日志组。当一个联机重做日志组被写满的时候, 就会发生日志切换, 这时联机重做日志组2成为当前使用的日志, 当联机重做日志组2写满时候, 又会发生日志切换, 去写联机重做日志组1,
2013-12-27 14:57:23 606
原创 ORACLE锁
一、ORACLE加锁的原因: 数据库是一个多用户使用的共享资源。当多个用户并发地存取数据时, 在数据库中就会产生多个事务同时存取同一数据的情况。若对并发操作不加控制就可能会读取和存储不正确的数据, 破坏数据库的一致性。 加锁是实现数据库并发控制的一个非常重要的技术。当事务在对某个数据对象进行操作前, 先向系统发出请求, 对其加锁。加锁后事务就对该数据对象有了一定的
2013-12-26 15:03:20 438
转载 ORACLE DDL锁介绍
在DDL操作中会自动为对象加DDL锁(DDL Lock),从而保护这些对象不会被其他会话所修改。例如,如果我执行一个DDL操作ALTERTABLE T,表T上就会加一个排他DDL锁,以防止其他会话得到这个表的DDL锁和TM锁。在DDL语句执行期间会一直持有DDL锁,一旦操作执行就立即释放DDL锁。实际上,通常会把DDL语句包装在隐式提交(或提交/回滚对)中来执行这些工作。由于这个原因,在Oracl
2013-12-26 15:00:07 1042
转载 ORACLE UGA与CGA
1、UGA (The User Global Area) PGA是一段包含一个Oracle服务或后台进程的数据和控制信息的内存。PGA的大小依赖与系统的配置。在专用服务(Dedicated Server)模式下,一个服务进程与一个用户进程相关,PGA就包括了堆空间和UGA。而UGA(User Global Area用户全局区)由用户会话数据、游标状态和索引区组成。在共享服务(M
2013-12-26 11:00:13 1650
原创 PGA详解
PGA详解 当用户进程连接到数据库并创建一个对应的会话时, ORACLE服务进程会为这个用户专门设置一个PGA区, 用来存储这个用户会话的相关内容。 当这个用户会话终止时, 系统会自动释放这个PGA区所占用的内存。这个PGA区对于数据库的性能有比较大的影响, 特别是对于排序操作的性能。 所以, 在必要的时候合理管理PGA区, 能够在很大程度上提高数据库的性能。一、 PGA与S
2013-12-25 22:08:04 2682
原创 ORACLE专用服务器连接与共享服务器连接
在ORACLE9i或者10g中, 可以看到有2种连接模式, 一种叫做专用服务器连接(dedicated server), 另外一种叫做共享服务器连接(shared server)。一、ORACLE专用服务器连接 专用服务器连接就是说每次在对ORACLE进行访问请求时, ORACLE服务器的监听器会得到这个访问请求, 然后会为这个访问创建一个新的进程来进行服务。所以说,对于每一
2013-12-25 16:28:00 701
转载 ORACLE闩锁(Latch)
一、闩锁的概述(LATCH) LATCH和LOCK都是实现串行化的方法, LATCH是一个低级别的, 轻量级的锁, 获得和释放的速度都很快。 LOCK可能持续很长时间, 通过使用队列, 先进先出的方式实现。 ORACLE使用闩锁来实现内存的分配和释放。 例如:
2013-12-24 20:48:01 1227 2
原创 ORACLE MERGE INTO用法
ORACLE9i引入了MERGE命令, 你能够在一个SQL语句中对一个表同时执行inserts和updates操作
2013-12-23 20:07:18 516
原创 ORACLE UNDO表空间
UNDO表空间用于存放UNDO数据, 当执行DML操作(INSERT、UPDATE、DELETE和MERGE)时, ORACLE会将这些操作的旧数据写入到UNDO段, 在ORACLE 9i之前, 管理UNDO数据时使用(ROLLBACK SEGMENT)完成的。从ORACLE 9I开始, 管理UNDO数据不仅可以使用回滚段, 还可以使用UNDO表空间。因为规划和管理回滚段比较复杂, 所以ORACL
2013-12-23 16:21:03 680
原创 查询ORACLE被锁的对象以及解锁
1、查询oracle被锁对象及其语句SELECTa_s.owner, a_s.object_name, a_s.object_type, VN.SID, VN.SERIAL#, VS.SPID"OS_PID", VN.PROCESS"CLIENT_PID", VN.USERNAME,
2013-12-22 16:35:01 485
原创 DML事务锁定机制
DML事务锁定机制 能够保证当某个用户正在更新表里的一行数据时, 其他用户不能同时更新相同的数据行, 而且也不能删除或修改被更新的表。 行级锁(TX锁) UPDATE EMPLOYEE SET LAST_NAME='xkj' WHERE EXPLOYEE_ID=100 ; 1. ORACLE对该SQL语句进行解
2013-12-22 16:06:06 692
原创 五种模式的表级锁
表级锁共具有五种模式一、 行级排他锁(Row Exclusive, 简称RX锁) 当我们进行DML时会自动在被更新的表上添加RX锁, 或者也可以通过执行lock命令显式的在表上添加RX锁。 在该锁定模式下, 允许其他的事务通过DML语句修改相同表里的其他数据行, 或通过lock命令对相同表添加RX锁定, 但是不允许其他事务对相同的表添加排他锁(X锁) 。
2013-12-22 16:05:39 1222
原创 FOR UPDATE、FOR UPDATE NOWAIT、WAIT详解
一、 FOR UPDATE和FOR UPDATE NOWAIT的区别: 首先一点, 如果只是SELECT的话, ORACLE是不会加任何锁的, 也就是ORACLE对SELECT读到的数据不会有任何限制, 虽然这时候有可能另外一个进程正在修改表中的数据, 并且修改的结果可能影响到你目前SELECT语句的结果, 但是因为没有锁, 所以SELECT结果为当前时刻表中记录的状态。
2013-12-20 15:38:06 1802
原创 utlrp.sql脚本
utlrp.sql脚本: 1. utlrp.sql脚本是用来编译无效对象的脚本。 ORACLE建议在对数据库进行迁移、升级、降级后运行一遍该脚本来编译无效对象。 2. 该脚本可以在数据库运行的状态下执行编译、数据库中的invalid对象。 3. $ sqlplus '/as sysdba' @?/rdbms/admin/utlrp.sql 【F:/oracle/p
2013-12-17 20:54:57 2900
原创 ORACLE表空间、段、区的管理方式
一、 ORACLE表空间管理 ORACLE表空间的管理方式分为: 1.1 字典管理方式: 1.2 本地管理方式二、 ORACLE段管理 ORACLE段的管理分为: 2.1 手动段空间管理 2.2 自动段空间管理三、 ORACLE区管理 ORACLE区的管理
2013-12-16 17:20:50 4750
原创 ORACLE的逻辑存储体系
一、ORACLE的逻辑存储体系 ORACLE的逻辑存储体系包含了表空间(tablespace)、段(segment)、区(extent)、块(block)。 1.1 表空间 数据库是由一个或多个表空间组成, 表空间是由一个或多个数据文件组成。 一个表空间可能包含一个或多个段, 每个段都只属于一个表空间。
2013-12-14 17:55:07 729
原创 ORACLE数据库的启动与关闭
一、ORACLE数据库的启动 ORACLE数据库的启动过程包含三个步骤: 第一步: startup nomount 启动实例 实例的启动过程会读取数据库的参数文件, 为数据库分配SGA和启动后台进程。 读取参数文件的过程为: 先SPFILE再PFILE。 第二步: alter data
2013-12-13 15:33:27 479
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人