LVM上实施ASM
环境:RHEL-5.8 oracle _10gR2 绑定裸设备[root@localhost ~]# fdisk -l Disk /dev/sda: 32.2 GB, 32212254720 bytes 255 heads, 63 sectors/track, 3916 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Device Boot Start End Blocks Id System /dev/sda1 * 1 13 104391 83 Linux /dev/sda2 14 1288 10241437+ 83 Linux /dev/sda4 1289
理解LVM《二》lvm 组件
㈠ 物理卷 ⑴ PV简介 一个设备可以被 LVM 使用之前必须先被初始化为一个 PV 。这会在设备的起始位置放置一个标签,俗称“8e”。 默认情况下,LVM 标签被放在第2个 512 字节的扇区。 但是,你可以把PV 标签放在一个磁盘
记一次和爸爸的电话
因为还是学生、因为要考OCM、 犹豫了还是打通了爸爸的电话、 爸爸说了一句话、就往往我卡里打了4w “这世上、最亲的莫过父子情了、不培养儿子、那要我培养谁呢?” 呵呵、爸爸、最亲莫过父子情了 谢谢您、电话里我没敢说、 借这个平台、向您致以: "
oracle 开发误区探索《二》
接上一篇。 ③ 堤防DDL提交事务 DDL伪代码展示: begin commit; DDL-statement commit; Exception
linux常见的压缩命令
㈠ 压缩技术的原理: --原理一 由于1byte=8bit,所以每个byte当中会有8个内存单元,而每个内存单元可以是0,1。当我们记录数字1时,有7个bit应该是“空的”。不过,为了满足目前我们的OS数据的访问, 所以就会将数据转为byte的形态来记录。有些压缩技术就是把这部分空间给“揪
oracle 开发误区探索《一》
环境:sys@ORCL> select * from v$version where rownum=1; BANNER ---------------------------------------------------------------- Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Prod sys@ORCL> !uname -a Linux localhost.localdomain 2.6.18-308.el5xen #1 SMP Fri Jan 27 17:59:00 EST 2012 i686 i686 i386 GNU/Linux ① 单列和复合列NOT IN 子查询 not in (........)里面的null,如果存在null,则返回的
理解LVM(一):lvm入门介绍
㈠ LVM入门纲领 卷管理在物理存储设备上建立了一个抽象层,允许你建立逻辑存储卷。这和直接使用物理存储设备相比,大大增加了灵活性。 逻辑卷允许存储虚拟化。通过逻辑卷,你不会被物理磁盘大小所限制。 &
深入学习data block体系结构
环境:SQL> select * from v$version where rownum=1; BANNER ---------------------------------------------------------------- Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Prod SQL> !uname -a Linux localhost.localdomain 2.6.18-308.el5xen #1 SMP Fri Jan 27 17:59:00 EST 2012 i686 i686 i386 GNU/Linux ㈠ data block 物理结构图 ㈡ 一次对block的dump过程hr@ORCL> create table think(a varchar2(10)); Table crea
oracle工具:show_space
create or replace procedure show_space ( p_segname_1 in varchar2, p_space in varchar2 default \'MANUAL\', p_type_1 in varchar2 default \'TABLE\' , p_analyzed in varchar2 default \'N\', p_owner_1 in varchar2 default user) as p_segname varchar2(100); p_type varchar2(10); p_owner varchar2(30); l_unformatted_blocks number; l_unformatted_bytes number; l_fs1_blocks number; l_fs1_bytes number; l_fs2_blocks number; l_fs2_bytes number; l_fs3_blocks number; l_fs3_bytes number; l_fs4_blocks number; l_fs4
分布式数据库:dblink
dblink是数据库对象、允许你访问远程表及执行远程程序、另外、dblink是单向连接、创建dblink时、oracle在数据字典记录其元数据. 在db link时,必须关心一下global_name.这个缺省下,是作为网络服务名对外提供服务的。但大部分我们是不用的。SQL> show parameter global_names NAME TYPE VALUE ------------------------------------ ----------- global_names boolean FALS
行迁移和行链接
定义: 行迁移:因为update、将行变长、原来的块已经放不下了、行被挪进新块、 行链接:行一开始就太大、比如你插入了1w个字节的行、必须要分两个块存放、 由此、行变长的时间先后可作为判断依据 产生场景: 行迁移 Oracle会将整行的数据迁移到一个新的数据块上,而将该行原先
linux命令的oracle运用(一)
1 dd 模拟物理坏块SQL> select * from v$database_block_corruption; no rows selected SQL> select * from v$backup_corruption; no rows selected SQL> select * from v$copy_corruption; no rows selected SQL> create tablespace physical_corrupt datafile size 10m autoextend on; Tablespace created. SQL> conn hr/hr Connected. SQL> create table tt (i int) tablespace physical_corrupt; Table created. SQL> insert into
sqlplus上下键浏览历史命令行
1 挂载系统的Packages到mnt,并安装readline[root@Think mnt]# cd Packages/ [root@Think Packages]# rpm -ivh --nodeps readline* Preparing... ########################################### [100%] package readline-6.0-3.el6.x86_64 is already installed package readline-devel-6.0-3.el6.x86_64 is already installed 2 到rlwrap下载网站去下载rlwrap,并安装 3 编辑.bash_profile[oracle@Think ~]$ vim .bash_profile
模拟工业场景:数据库的用户被删除掉了,表空间,数据文件都在的 能否恢复?
环境: SQL> select * from v$version where rownum=1; BANNER ---------------------------------------------------------------- Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Prod SQL> !uname -a Linux think-V30SA 2.6.35-22-generic #33-Ubuntu SMP Sun Sep 19 20:34:50 UTC 2010 i686 GNU/Linux 我打算用闪回数据库来恢复,关于开启闪回数据库请参见:闪回如何开启及注意事项 模拟的实
ORA-10997: another startup/shutdown operation of this instance in progress解决方法
今晚想学习一下oracle,开库: SQL> startup ORA-10997: another startup/shutdown operation of this instance inprogress ORA-09967: unable to create or open lock file Linux Error: 13: Permission denied 百度、谷歌了好久,网上的方法试了很多,都打水漂了,就差
理解mysql锁(1)锁的概述
相對其他數據庫而言,MySQL的鎖機制比較簡單,其最顯著的特點是不同的存儲引擎支持不同的鎖機制,但總的來説,mysql各種存儲引擎使用了三種類型的鎖定機制:行級鎖定、頁級鎖定和表級鎖定。其中,MyISAM主要使用表級鎖定,而使用行級鎖定的主要是Innodb。 pre { font-family: "Ubuntu"; }p { margin-bottom: 0.21cm; }pre { font-family: "Ubuntu"; }p { margin-bottom: 0.21cm; }pre { font-family:
用等比数列解析伪列level的另一个作用
我们都知道,level是个伪列,代表当前节点所在的层级;对根节点来说,level返回1;根节点到子节点返回2,以此类推。 借助level,我们可以控制对表的扫描次数。第一次扫描得出的结果集的level都是1,第二次扫描的结果集的level都是2,依此类推。 实验环境:SQL> create table test as select ename from emp where rownum<=2; Table created. SQL> select * fr
Error: Cannot create Windows service for MySql. Error: 0解决方案
Error: Cannot create Windows service for MySql. Error: 0 图示: 当你没有事先停止并卸载已有MySQL服务,并且使用MySQL Configuration Wizard(配置向导)重新安装或升级MySQL时,会遇到该问题。发生的原因是,当配置向导试图安装服务时,它发现已经有一个同名的服务。 解决该问题的一个方案是使用配置向导时选择mysql之外的其它
怎样去定位你所未知的东西:尤其是想知道哪个view查询什么内容
假如我要查有关 role 相关的东西,倚重dba_objects,于是: SQL> select object_name from dba_objects where object_name like \'%ROLE%\'; OBJECT_NAME -------------------------------------------------------------------------------- DBA_ROLES&n
理解锁和闩(3)TX锁和TM锁
oracle没有锁管理器和锁列表,这样可以避免行级锁维护的开销和行级锁数量不足导致的争用问题。在Oracle的每行数据上,都有一个标志位来表示该行数据是否被锁定,要查看某一行是否被锁定,必须直接找到这一行,而不要指望能从哪个列表得到答案,事务只是找到数据。其locking过程如下: &nbs