Welcome 微信登录

首页 / 数据库 / MySQL

Oracle DML语句(insert,update,delete) 回滚开销估算

Oracle DML语句(insert,update,delete) 回滚开销估算

一、Oracle DML SQL回滚逻辑简介 数据库事务由1个或多个DML(insert,update,delete) SQL组成,我们知道Oracle数据库在进行DML操作需要使用UNDO表空间来保存事务回滚的信息,对于每种DML操作回滚的UNDO信息都不一样,大致如下:insert操作很简单,只要保存记录插入到数据块及数据块内的槽号,回滚时只要根据数据块号及槽号做删除就可以了。update操作需要保存记录位置,还需要保存变更的字段原内容,回滚时采用原...
如何让Oracle索引不起作用(不可见)

如何让Oracle索引不起作用(不可见)

我们经常在数据库上建索引或删除索引,由于索引对SQL的执行性能影响非常大,有可能变得很好,也有可能变得很差,在线下开发环境我们可以充分测试,对于创建或删除索引没什么问题。但是在线上环境,由于高并发的访问,如果我们删除了一个重要的大索引(GB以上),删除后才发现大量SQL性能变差,很快主机就LOAD飙升,系统无法运行了,由于索引已经删除,并且很大,要当场重建基本不可能,因为这个索引巨大,创建估计要几分钟甚至几个小时,况且这时主机已经基本没有响应,IO全部用光...
Python模拟实现Oracle的sqlplus工具

Python模拟实现Oracle的sqlplus工具

团队计划开发数据库服务平台,需要用到一些服务器的脚本开发,为了了解python,给自己定了一个模拟sqlplus的小需求,然后去实现。个人体会:python开发快捷,集成很多常用的公共包,对常用数据结构使用很方便,最大的缺点是版本较多,新版本不向前兼容,对AIX及HP-UNIX不太常用的OS也缺少直接支持。以下是工具演示:以下是源代码:以下代码用的python版本是python2.7 http://www.python.org/需要安装cx_Oracle开...
Oracle 找出最耗资源的 SQL

Oracle 找出最耗资源的 SQL

一、要找出最耗资源的sql我们可以首先使用top等工具,找到最好资源的进程(记住进程号),例如,操作系统进程号为2796,然后根据这个进程号(v$process.spid)在v$process中找到进程地址(v$process.addr),然后根据这个地址在v$session中找到相应的sid(v$session.sid),然后根据这个sid找到相应的hash alue(v$session. sql_hash_value),然后根据这个hash alue在...
MAC 装 Oracle JDeveloper 11g方法

MAC 装 Oracle JDeveloper 11g方法

1 去 苹果官方网站下载支持你系统 JAVA,Lion系统需要单独安装,雪豹自带JAVA,只需要更新新版即可地址是这个 http://support.apple.com/downloads/2 如果你的帐号不是管理员以及没有密码的,请自己去 系统配置改为管理员,以及增加口令3 打开终端。终端在程序- 工具 utilites输入下面命令cd /System/Library/Frameworks/JavaVM.framework/Versions/1.6/Ho...
Oracle教程:配置 RAC 负载均衡与故障转移

Oracle教程:配置 RAC 负载均衡与故障转移

Oracle负载均衡主要是指新会话连接到RAC数据库时,如何判定这个新的连接要连到哪个节点进行工作?通常情况下,负载均衡分为客户端负载均衡与服务器端负载均衡。客户端负载均衡通常是在客户端的tnsnames.ora中多添加一个链接地址以及LOAD_BALANCE与failover参数。而服务器端的负载均衡则相对复杂,下面具体描述服务器端负载均衡。一、负载均衡 注意这里的负载均衡指的是连接的负载均衡,即客户可以随机从不同的实例中连接到数据库 1.配置tnsna...
在Linux下为MySQL开启更新日志

在Linux下为MySQL开启更新日志

测试出现了BUG,查看了下应用程序打印的日志,发现有一个大问题,就是前一天的数据还正确,第二天的数据就出现了错误,唯一的可能是有人在这期间直接更新了数据库,而正常情况下数据库的每次更新都需要程序将一些统计数据发送给另外一个部门,结果第二天程序发送的数据出现了异常。我怀疑是有人用update语句直接update了数据库。这是按照推理来的,但是又没有足够的证据,因为mysql没有开启日志功能。这个问题又不能重现,在应用程序中找BUG很困难,那就为mysql加上...
Linux下MySQL 5.5.15源码包编译安装

Linux下MySQL 5.5.15源码包编译安装

MySQL果然是不愧是目前最火的数据库之一,自从mysql5.5.8之后,MySQL的源码包编译安装都要用到cmake来进行编译了,编译的过程没有本质的区别,但是要直观很多。以前安装过很多次MySQL,每次都会有些小小错误。记录一下本次安装过程,以备日后参考。1.源码包准备(1)mysql-5.5.15.tar.gz mysqlmysql源码包。去www.mysql.com下载最新的mysql5.5.15。注意千万不要下成了安装包,忙活半天都白搭。我就是如...
Rman备份异机恢复指南

Rman备份异机恢复指南

环境介绍:操作系统版本:RHEL5.4 32位 Oracle版本: 10.2.0.1 32位Oracle_SID: orcl源服务器和目的服务器的操作系统,oracle版本均一致源服务器:192.168.227.20目的服务器:192.168.227.30,只需要安装oracle软件即可,不需要建库操作一:在源服务器上使用rman备份数据库,包括数据文件,归档日志文件和控制文件,参数文件的备份[oracle@orcl~]$mkdir/u01/backup ...
Oracle数据库备份与恢复

Oracle数据库备份与恢复

1. 使用EM备份和恢复数据库(略)2.RMAN技术RMAN----- Recovery Manager,恢复管理器。用来备份和恢复数据文件、控制文件和归档日志,可以用来执行完全或不完全的数据库恢复。2.1 基本概念a.备份片(backup pieces),每个备份片是一个单独的输出文件,一个备份片的大小是有限制的,如果没有限制,那么备份集就有一个备份片组成了。并且备份片的大小不能大于使用的文件系统所支持的文件长度的最大值。b.备份集合(backup se...
<< 421 422 423 424 425 426 427 428 429 430 >>