Welcome 微信登录

首页 / 数据库 / MySQL

理解redo(5)深入学习RBA

理解redo(5)深入学习RBA

1 定义RBA就是redo entries在重做日志文件中所对应的地址2 组成RBA由三部分组成:序列号(4个字节)块号(4个字节)起始字节(2个字节)以上都是16进制存储3 类型3.1 LRBA定义:块第一次变脏时所对应的redo entries在redo log file里的位置注释:CKPT-Q按LRBA的顺序维护脏块,执行检查点事件时,DBWn从CKPT-Q按LRBA的顺序写出。LRBA也就是checkpoint position。从检查点位置(L...
Oracle实用工具:oradebug

Oracle实用工具:oradebug

1 oradebug介绍oradebug主要是给Oracle支持人员使用的,尽管很早便有,但oracle官网很少有记载。他是个sql*plus命令行工具,有sysdba的权限就可以登入,无需特别设置。他可以被用于:1)追踪进程,或者是你的,或者是外部的2)确定进程往哪个trc文件写3)转储:数据文件头、内部oracle结构等4)挂起进程,暂时的5)确定实例使用了哪些共享内存块和信号量6)找出RAC实例使用了哪些互联地址和协议7)修改SGA中的数据结构2 o...
浅析Oracle b-tree index搜索原理

浅析Oracle b-tree index搜索原理

索引与表一样,也属于段(segment)的一种。里面存放了用户的数据,跟表一样需要占用磁盘空间。只不过,在索引里的数据存放形式与表里的数据存放形式非常的不一样。在理解索引时,可以想象一本书,其中书的内容就相当于表里的数据,而书前面的目录就相当于该表的索引。同时,通常情况下,索引所占用的磁盘空间要比表要小的多,其主要作用是为了加快对数据的搜索速度。但是,索引作为一种可选的数据结构,你可以选择为某个表里的创建索引,也可以不创建。这是因为一旦创建了索引,就意味着...
在Linux上使用MySQL的心得整理

在Linux上使用MySQL的心得整理

# /etc/init.d/mysqld start启动 MySQL如果是初次使用这个指令来启动,你的 /var/lib/mysql 会建立资料库。# mysql -u root初次使用是不用输入密码。之后最好加入密码以防止别人入侵。mysql指令后面要加";",才能够执行。 (直接按Enter只能当跳行看)大部分的指令都和SQL的指令一样,所以只要在window上用好在拿来贴上就行了。要离开只要输入quit就行了。mysql> quit# mysq...
Oracle约束知识笔记

Oracle约束知识笔记

管理数据完整性一 学习目标1.实现数据完整性约束2.管理完整性约束3.从数据字典中获取约束信息二 保证数据完整性的方法1.应用程序代码控制2.触发器控制3.声明完整性约束三 约束的类型 (见图)1.not null (不能为空)2.unique (值必须唯一)3.primary key (not null + unique)4.foreign key (该表值必须在外键表中存在)5.check (自己加的条件)6.ref (不熟)注:Constraints...
熟悉掌握Oracle SQL语言

熟悉掌握Oracle SQL语言

SQL语言是一种高级的非过程化的查询语言,用户使用它主要进行数据库的操作可以把SQL语言看成是客户端与服务器端沟通的一个工具,用来存取,查询和更新,关系数据库系统Insert语句INSERT语句的语法结构如下:table值的是要插入数据的表的表名,Column指的是要插入数据的列名,Value指的是要插入的具体数据值例如往会员表中插入一个新的会员数据,可以这样添加:前者的优点是可以指定哪些字段添加哪些数据,缺点是表名后面的小括号中的字段名需要和Value值...
Oralce SQL语言常用函数

Oralce SQL语言常用函数

字符函数这个函数一般接收字符作为参数,并且可以返回字符或数字其中最常用有以下两个函数1.CONCAT函数主要用于字符串的连接,具体语法如下CONCAT(c1,c2)接收两个参数,将第二个参数连接到第一个参数的末尾,假如第二个参数是NULL,则函数返回第一个参数,假如第一个参数是NULL,则参数返回第二个参数,假如都为NULL,则函数返回NULL为商品价格添加元单位示例如下:2.NVL函数这个函数主要用于函数替换NVL(e1,e2)接收两个参数,假如第一个参...
恢复PL/SQL Developer中删除确认对话框

恢复PL/SQL Developer中删除确认对话框

如果你用Oracle,那你有很大的可能会使用PL/SQL Developer。在使用PL/SQL Developer时,当你在Table列表或者其他对象列表中右击并选择Drop操作时,会弹出确认对话框。这些对话框的底部会有个Don"t show this message again的勾选框,如果你不小心勾上并点击了确定,那惨了,以后如果不小心再选了Drop,没有提示就会删掉这个对象!如何恢复呢?工具-首选项 (Tools-Preferences)打开的界面...
理解redo(6)日志却的流程和直接路径加载的REDO分析

理解redo(6)日志却的流程和直接路径加载的REDO分析

当server process得到redo allocation latch进行redo log buffer分配之前,需要先嗅一下redo log file是否有足够的空间。倘若空间不足,则sp会发送switch log file的请求,然后坐等log file switch completion事件的完成了。日志却请求发出后,CKPT会进行一次增量检查点事件,而LGWR开始进行日志却换工作。具体流程如下:1)LGWR进程会通过控制文件中的双向链表,查找...
MySQL从 5.1.26-rc 升级 到 5.5.15

MySQL从 5.1.26-rc 升级 到 5.5.15

今天做了MySQL升级,从 5.1.26-rc 升级 到 5.5.15,都是从官网下载的源码包进行编译的,其中MySQL 5.5.15是由我的同事提供的。由于现有数据库采用innodb的引擎,故采用mysqldump导出备份,然后再导入备份的方式进行升级。升级大致步骤准备:1、对现有数据库做备份2、对现有的MySQL程序重命名(防止升级失败还能恢复)3、对现有权限库做单独备份4、替换现有MySQL程序5、启动MySQL 5.5.15,导入备份注:特别注意m...
详解MySQL的tee功能 并利用其记录相关操作

详解MySQL的tee功能 并利用其记录相关操作

由于经常对mysql数据库进行大量的更改操作,比如更改字段,添加或删除索引等等,我们把这些操作放到sql语句中,然后登陆mysql,通过source执行该sql文件,为了做好相关记录,方便以后的工作中进行核对查询,将MySQL中sql运行结果保存到文件,类似Oracle sqlplus中利用spool的功能,方法大致如下,仅供参考:1、登陆mysql之后mysql> T mysql_result.logLogging to file "mysql_r...
<< 571 572 573 574 575 576 577 578 579 580 >>