实战体验几种MySQL Cluster方案
cluster中的其他类型节点(SQL Node),通过它可以配置Node。 SQL Node:在SQL Node就是一个使用mysql server进程,用于供外部应用提供集群数据的访问入口。Data Node:用于存储集群数据;系统会尽量将数据放在内存中。缺点及限制:对需要进行...
MySQL NDB Cluster和Galera Cluster的主要特性和优缺点介绍
http://m.blog.itpub.net/15498/viewspace-2135219/MySQL NDB Cluster是MySQL 适合于分布式计算环境的高实用、高冗余版本。它采用了NDB Cluster 存储引擎,允许在1个 Cluster 中运行多个MySQL服务器。MySQL NDB Cluster是一种技术,该技术允许在无共享的系统中部署“内存中”数据库的 Cluster 。通过无共享体系结构,系...
自动化运维工具 SaltStack 在云计算环境中的实践
https://www.ibm.com/developerworks/cn/opensource/os-devops-saltstack-in-cloud/index.htmlhttps://www.ibm.com/developerworks/cn/views/opensource/libraryview.jsp随着云计算技术的快速普及与发展,越来越多的企业开始学习和搭建自己的云平台代替传统的 IT 交付模式,企业的 IT 环境也随之越来越复杂,常规的运维...
转:MySQL主从、字典死锁、连接数的Python监控脚本
https://zhangge.net/5106.html 最近,公司的系统在天津增加了不少异地容灾,其中就有异地双主MySQL。由于容灾环境一般只会在出现较大的网络故障或故障演习的时候用到,所以,容灾系统的可用性就只能靠监控了。<p>对于互联网这种赶鸭式的发展模式,很多公司都没有完善的自动化运维系统。所以,很多时候还得靠自己写...
mysql InnoDB锁等待的查看及分析
说明:前面已经了解了InnoDB关于在出现锁等待的时候,会根据参数innodb_lock_wait_timeout的配置,判断是否需要进行timeout的操作,本文档介绍在出现锁等待时候的查看及分析处理; 在InnoDB Plugin之前,一般通过show full processlist和show engine innodb status命令查看当前的数据库请求,然后再判断当前...
【MySQL】锁——查看当前数据库锁请求的三种方法
MySQL锁
转:MySQL详解--锁
锁是计算机协调多个进程或线程并发访问某一资源的机制。在数据库中,除传统的计算资源(如CPU、RAM、I/O等)的争用以外,数据也是一种供许多用户共享的资源。如何保证数据并发访问的一致性、有效性是所有数据库必须解决的一个问题,锁冲突也是影响数据库并发访问性能的一个重要因素。从这个角度来说,锁对数据库而言显得...
转:mydumper备份原理和使用方法
mydumper 作为一个实用工具,能够良好支持多线程工作, 可以并行的多线程的从表中读入数据并同时写到不同的文件里 ,这使得它在处理速度方面快于传统的 mysqldump 。其特征之一是在处理过程中需要对列表加以锁定,因此如果我们需要在工作时段执行备份工作,那么会引起 DML 阻塞。但一...
转:深入解析MySQL分区(Partition)功能
自5.1开始对分区(Partition)有支持= 水平分区(根据列属性按行分)=举个简单例子:一个包含十年发票记录的表可以被分区为十个不同的分区,每个分区包含的是其中一年的记录。=== 水平分区的几种模式:===* Range(范围) – 这种模式允许DBA将数据划分不同范围。例如DBA可以将一个表通过年份划分成三个分区...
转:Mysql 分区 分表相关总结
前段时间项目需要,一直在研究mysql sharding,看了一些这方面的资料,也亲自实验测试了一些数据。在此,做个概括的笔记,方便以后回顾知识,其实大多是借鉴网络上各位前辈的,然后抱着学习态度去实践,积累属于自己的东西。其实拆分很灵活,有的是垂直切分,将一个库拆成两个或多个,将有相关联的表放在一个库里。有...
转:MySQL性能优化配置参数之thread_cache和table_cache详解
http://www.jb51.net/article/51828.htm一、THREAD_CACHEMySQL里面为了提高客户端请求创建连接过程的性能,提供了一个连接池也就是 Thread_Cache池,将空闲的连接线程放在连接池中,而不是立即销毁.这样的好处就是,当又有一个新的请求的时候,mysql不会立即去创建连接 线程,而是先去Thread_Cache中去查找空闲的连接线程,...
MySQL 5.6 Table cache 简介
一、 Table cache MySQL 5.6后,引入了“table_cache_instances”参数来控制 table cache instance的个数。目前最大值是64,默认值是1。建议值是16,当系统CPU核数高于16时。引入此参数的目的是,提高并发。相当于把table cache 拆成了多个分区,每个分区的打开table句柄数为:table_open_cache / table...
table_open_cache参数对mysql性能的影响
Table_open_cache:表描述符缓存大小,可减少文件打开/关闭次数; 为了避免线程相互干扰,每个访问表的线程各自维护一个文件描述符,多耗了内存但是提高了性能,即一个sql若调用了2次表,也需要分配2个文件描...
【登陆认证】oracle的操作系统认证和口令文件认证方式(转载)
关于oracle的操作系统认证方式和口令文件认证方式一直苦恼了很久,偶然在网上找到一篇文章,记录一下,稍后再做几个实验验证一下。本文来源 http://wenku.baidu.com/view/f2ea58c78bd63186bcebbc37.htmloracle认证方...
LINUX系统编程 关于SDTIO库缓冲区
我们知道标准C中的文件读取的函数比如printf,fwrite等函数,实际都是调用OS级别的API,比如LINUX下就是wirte,read函数,而write read函数在用户态下是没有缓冲的,当然在内核态有OS CACHE/OS BUFFER,所以某些直接调用wirte,read的程序肯定会分配一个缓冲区,特别是O_DIRECT这种方式下,内核态的OS CACHE和OS BUFFER...
LINUX系统编程 关于SDTIO库缓冲区
我们知道标准C中的文件读取的函数比如printf,fwrite等函数,实际都是调用OS级别的API,比如LINUX下就是wirte,read函数,而write read函数在用户态下是没有缓冲的,当然在内核态有OS CACHE/OS BUFFER,所以某些直接调用wirte,read的程序肯定会分配一个缓冲区,特别是O_DIRECT这种方式下,内核态的OS CACHE和OS BUFFER...
从顺序随机I/O原理来讨论MYSQL MRR NLJ BNL BKA
从顺序随机I/O原理来讨论MYSQL MRR NLJ BNL BKA本文只讨论innodb存储引擎,并且有部分观点为作者观点,如果有误请指出。一、机械磁盘原理 机械盘由动臂,盘片,读写磁头,主轴组成,磁头是固定不能动的,要读取相应的扇区只能通过盘片的 旋转。 每一个盘片为双面,每一个面...
LINUX系统编程 LINUX 虚拟内存
LINUX 虚拟内存以32位操作系统为例子,因为64位系统虚拟地址过大为2^64,32位仅仅为2^32=4G更利于描述,但是原理东西都一样这首先要从程序和进程之间的关系开始,我们一般写好一段C\C++代码编译后仅仅为可执行文件假设为a.out,我们运行a.out的时候,这个才叫进程,进程是OS级别抽象的实体(PCB task_struct结构体),为程...
LINUX时区设置及与数据库之间(ORACLE MYSQL)的关系
LINUX时区 LINUX时区由/etc/localtime设置,其可以是一个指向/usr/share/zoneinfo下文件的软连接,在/usr/share/zoneinfo目录下每个文件都包含了特定地区的时区信息,很多都分为洲目录/地区目录 如:UTC:GMT标准时间+0时区CET:欧洲中部时间EST:美国东部标准时间Asia/Shanghai:中国上海+8时区 &nb...
从排序原理到MYSQL中的排序方式
本文参考MYSQL官方文档,算法书籍,部分为自己观点可能有误,如果有误请指出共同参考转载请说明出处,谢谢!一、MYSQL排序可能用到的排序算法从MYSQL官方文档和源码的接口来看MYSQL使用BUFFER内部快速排序算法,外部多路归并排序算法,相应的接口函数为filesort()函数,注意filesort()是一个总的接口,归并排序也包含...