【MySQL】gap lock 浅析
【定义】innodb 行级锁 record-level lock大致有三种:record lock, gap lock and Next-KeyLocks。record lock 锁住某一行记录 gap lock 锁住某一段范围中的记录 next key l...
【MySQL】可重复读下的幻读
【背景】在研究gap lock的时候,参考了一篇文章http://www.mysqlperformanceblog.com/2012/03/27/innodbs-gap-locks/按照文章的实验来进行测试并不会出现幻读。【概念】幻读(Phantom Read) 是指当用户...
【MySQL】select for update 的Row Lock 与Table Lock
select for update 对表施加的锁模式分两种情况:只有当where 条件中明确地使用指定主键时,MySQL 才会对表执行Row lock (只锁住被选取的数据) ,否则MySQL 将会执行Table Lock (将整个数据表单给锁住)。下面以具体的实...
【系统】lsof 命令简介
losf 命令可以列出某个进程打开的所有文件信息。打开的文件可能是普通的文件,目录,NFS文件,块文件,字符文件,共享库,常规管道,明明管道,符号链接,Socket流,网络Socket,UNIX域Socket,以及其...
【MySQL】使用硬链接配合truncate 删除2.2T的表
因为一个收集集团机器的历史性能的数据库的一个表涨到2.2 T,而磁盘空间总共2.6 T,和开发讨论之后决定废弃该表,对数据进行清理。问题是如何在生产环境下删除2.2 T 的文件并不能影响数...
【存储】RAID 知识之二
从 章中我们了解到多个磁盘驱动器通过可以通过RAID卡并行传输数据,达到单个的磁盘篇文驱动器几倍、几十倍甚至上百倍的速率。而除了并行传输数据提高系统io性能之外还有 RAID缓存--cach...
【存储】RAID 知识之一
作为一名小小DBA,接触的很多数据库应用,通常情况下对于OLTP类型的数据库应用属于IO bond 型 ,IO往往会成为瓶颈。后续会写一系列与数据库相关的存储的文章,正如本博客的标题所言“DBA的价值不仅...
【MySQL】如何使用SQL Profiler 性能分析器
MySQL5.0.37版本以上支持profiling,通过使用profiling 功能可以查看到sql语句消耗资源的更详细的信息。通常我们使用explain 查看执行计划,结合profile 功能我们可以定位sql 执行过程中的瓶颈到底出现在哪...
【MySQL】Could not initialize master info structure
对一个M-M 架构的mysql 重新搭建双master ,出现了两个报错:ERROR 29 (HY000): File '/home/mysql/data3306/slave-relay.066538' not found (Errcode: 2)ERROR 1201 (HY000): Could not initialize master info stru...
【MySQL】mysql optimize table
维护mysql 对表空间的回收策略是只拓展,不回收。对表执行delete之后,表空间是不回收的,空闲的空间可以被insert 继续使用,通常执行truncate,重新逻辑导出,再导入或者执行optimize table 三种都可以重新使用未使用的...
【MySQL】ERROR 1005 (HY000): Can't create table' (errno: 150)
创建含有外键的表的时候遇到如下错误 ERROR 1005 (HY000): Can't create table 'eidsvr.oplog' (errno: 150)test@3302 12:02:22>CREATE TABLE biz( -> id INTEGER NOT NULL AUTO_INCREMENT, ...
【MySQL】bit 类型引发的故事
对一个表进行创建索引后,开发报告说之前可以查询出结果的查询在创建索引之后查询不到结果:mysql> SELECT count(*) FROM `node` WHERE uid='1655928604919847' AND is_deleted='0';+-...
【MySQL】批量删除mysql中数据库中的表
要删除某个数据库下面所有表的方法:比如删除test数据库下所有表,如果要删除某些前缀的表mysql -uroot -h127.0.0.1 --skip-column-names -A -e "select concat('drop table test.', table_name,';') from i...
【Oracle】Oracle RAC ON NODE
传统的Oracle RAC被用于多服务器架构体系,这此体系中,不同的rac 实例分别置于不同的服务器上。此架构防止了服务器非计划故障,比如os down,某个节点上的db down,因为透明应用程...
【MySQL】Can't get stat of './mysql/slow_log.CSV' (Errcode: 2)
在给数据库开启慢日志查询的时候遇到 如下问题root@rac1 : (none) 23:39:53> set global slow_query_log = 1;ERROR 13 (HY000): Can't get stat of './mysql/slow_log.CSV' (Errcode: 2)原因是因为数据库中没有s...
【MySQL】一次修改mysql 默认路径的经历
安装好mysql rpm 包之后,将数据文件和日志文件的路径由/var/lib/mysql 迁移到 /opt/mysql/data /opt/mysql/log ,并调整了innodb_data_file_path 和innodb_log_file_size 的值,启动数据库的时候报错:...
【RAC】在所有节点上滚动安装BUNDLE Patch for Base Bug 9413827补丁包
在升级rac 11.2.0.1到11.2.0.2 的时候会遇到一个bug 11201 TO 11202 ASM ROLLING UPGRADE – OLD CRS STACK FAILS TO STOP 本文以实例介绍如何安装次bug的补丁!1 确定opatch 的版本 下载最新的o...
【工具】一款oracle rac 检查工具
一 raccheck 是什么RACcheck is a RAC Configuration Audit tool designed to audit various important configuration settings within a Real Application Clusters (RAC), Oracle Clusterware (CRS)...
【RAC】启动/关闭CRS, OHAS, ASM & RDBMS 的步骤
Oracle Server Version: 11.2.0.1 to 11.2.0.2 - Release: 11.2 to 11.21) 在各个节点上依次检查 CRS/OHAS 服务是否开启了自动启动功能 --root 用户# $GRID_ORACLE_HOME/bin/crsctl config crs2) 如果没...
【RAC】单节点 重启 报ORA-1105 ORA-01606
版本 11.2.0.1.0rac1 rac2 linux 5.3U 2.6.18-128.el5 因为要修复一个bug做测试,在一个节点上修改隐含参数,然后重启!在测试的过程中遇到修改了rac1 上的参数sys@rac...