摘要: MySQL 加锁处理分析发表于2013 年 12 月 13 日由hedengcheng1背景11.1MVCC:Snapshot Read vs Current Read21.2Cluster Index:聚簇索引31.32PL:Two-Phase Locking31.4Isolation Level42一条简单SQL的加锁实现分析52.1组合一:id主键+RC62.2组合二:id唯一索引+RC62.3组合三:id非唯一索引+RC72.4组合四:id无索引+RC82.5组合五:id主键+RR92.6组合六:id唯一索引+RR92.7组合七:id非唯一索引+RR92.8组合八:id无索引+RR11 阅读全文
posted @ 2013-12-16 15:18 596448745 阅读(246) 评论(0) 推荐(0) 编辑
摘要: 在CentOS 6.3下安装完Oracle 10g R2,重开机之后,你会发现Oracle没有自行启动,这是正常的,因为在Linux下安装Oracle的确不会自行启动,必须要自行设定相关参数,首先先介绍一般而言如何启动oracle。一、在Linux下启动Oracle登录到CentOS,切换到oracle用户权限# su – oracle接着输入:$ sqlplus "/as sysdba"原本的画面会变为 SQL>接着请输入 SQL> startup就可以正常的启动数据库了。另外停止数据库的指令如下: SQL> shutdown immediate二、检查 阅读全文
posted @ 2013-12-13 15:39 596448745 阅读(421) 评论(0) 推荐(0) 编辑
摘要: 一、 ASM(自动存储管理)的来由:ASM是Oracle 10g R2中为了简化Oracle数据库的管理而推出来的一项新功能,这是Oracle自己提供的卷管理器,主要用于替代操作系统所提供的LVM,它不仅支持单实例,同时对RAC的支持也是非常好。ASM可以自动管理磁盘组并提供有效的数据冗余功能。 www.2cto.com 使用ASM(自动存储管理)后,数据库管理员不再需要对ORACLE中成千上万的数据文件进行管理和分类,从而简化了DBA的工作量,可以使得工作效率大大提高。二、 什么是ASMASM它提供了以平台无关的文件系统、逻辑卷管理以及软RAID服务。ASM可以支持条带化和磁盘镜像,... 阅读全文
posted @ 2013-12-13 15:00 596448745 阅读(319) 评论(1) 推荐(0) 编辑
摘要: 安装环境 Linux服务器:SuSe10 sp2 64位 Oracle服务器:Oracle11gR2 64位系统要求Linux安装Oracle系统要求系统要求说明内存必须高于1G的物理内存交换空间一般为内存的2倍,例如:1G的内存可以设置swap 分区为3G大小硬盘5G以上2.修改操作系统核心参数在Root用户下执行以下步骤:1)修改用户的SHELL的限制,修改/etc/security/limits.conf文件输入命令:vi/etc/security/limits.conf,按i键进入编辑模式,将下列内容加入该文件。oracle soft nproc 2047oracle hard np. 阅读全文
posted @ 2013-12-13 13:50 596448745 阅读(172) 评论(0) 推荐(0) 编辑
摘要: 原创作品,允许转载,转载时请务必以超链接形式标明文章原始出处、作者信息和本声明。否则将追究法律责任。http://huanghualiang.blog.51cto.com/6782683/1216786一、权限相关:1.修改sqlsecuritySql代码ALTERPROCEDUREwwwSQLSECURITYINVOKER;ALTERPROCEDUREwwwSQLSECURITYDEFINER;(1)MySQL存储过程是通过指定SQLSECURITY子句指定执行存储过程的实际用户;(2)如果SQLSECURITY子句指定为DEFINER,存储过程将使用存储过程的DEFINER执行存储过程,验 阅读全文
posted @ 2013-11-07 11:12 596448745 阅读(500) 评论(0) 推荐(0) 编辑
摘要: 问题:在使用ansible进行管理客户主机时,发现客户主机安装了多个版本的python,并且默认版本为3.0shell>>cat list192.168.2.9shell>>ansible all -m ping -i list --ask-pass -u test会报如下错误信息:192.168.2.9 | FAILED >> { "failed": true, "msg": " File \"/home/test/.ansible/tmp/ansible-1382616743.5-2013810 阅读全文
posted @ 2013-10-24 20:18 596448745 阅读(5029) 评论(0) 推荐(0) 编辑
摘要: 前言:最近Oracle MySQL在其官方Blog上贴出了 5.6中一些变量默认值的修改。其中innodb_old_blocks_time的默认值从0替换成了1000(即1s)关于该参数的作用摘录如下:how long in milliseconds (ms) a block inserted into the oldsublistmust stay there after its first access before it can be moved to the new sublist.Increasing this value protects against the buffer po 阅读全文
posted @ 2013-09-15 20:49 596448745 阅读(377) 评论(0) 推荐(0) 编辑
摘要: DBA某数据库集群每日17:00左右会出现一个性能陡降的现象,在10~20秒内主库出现大量慢查询。这些查询本身没有性能问题,也没有任何关联,可以认为是由于数据库系统负载较重,由于并发导致的慢查询。通过对全日志的梳理,已经查明每日17:00左右导致主库性能下降的问题原因是该时段在执行某定时任务中的一个Update语句。该update语句一次性会对约70万个row进行更新,引发大量数据库写入,是导致数据库性能下降的直接原因。1、问题描述 但是还存在一个疑点,那就是该定时任务每天会执行三次,零点,12点和17点,数据的更新量几乎一致,其中12点和17点均是业务的高峰期,为何只有下午17点会出现大量. 阅读全文
posted @ 2013-09-10 17:30 596448745 阅读(776) 评论(0) 推荐(0) 编辑
摘要: 转载自http://www.cnblogs.com/ggjucheng/archive/2012/11/11/2765237.htmlExplain语法EXPLAIN SELECT ……变体:1. EXPLAIN EXTENDED SELECT ……将执行计划“反编译”成SELECT语句,运行SHOW WARNINGS 可得到被MySQL优化器优化后的查询语句 2. EXPLAIN PARTITIONS SELECT ……用于分区表的EXPLAIN执行计划包含的信息id包含一组数字,表示查询中执行select子句或操作表的顺序id相同,执行顺序由上至下如果是子查询,id的序号会递增,id值越. 阅读全文
posted @ 2013-08-31 18:56 596448745 阅读(233) 评论(0) 推荐(0) 编辑
摘要: crontab如果不注意的话早晚会出问题,而且这种问题一旦出一次,就会永远记得,因为这种问题很折腾人。——某前辈设置了一个crontab30 0 * * * cd /home/work/user/huangbx/research/getfeature/data/current; sh resample.sh &>/dev/null$sh resample.sh是可以运行的$head -5 resample.sh##对事实数据进行采样set -xg_date=`date -d "3 days ago " +%Y%m%d`可是放到crontab里面就无法运行了。从 阅读全文
posted @ 2013-08-28 20:29 596448745 阅读(20807) 评论(1) 推荐(5) 编辑