您现在的位置:首页
--> MySQLOPS
数据库范式是DBA必知必会的知识,但是很多半路出家的DBA确往往忽略了这部分知识。eugene面试问应聘者时,爱问int(n)、varchar(n)这里N代表的含义,如果我面试应聘者,我肯定会问范式的相关问题。 为了不难住大家,下面我以一个game dba的角度给大家简单分享下我对范式的认识。
【导读】 MySQL数据库产品提供了二种比较特殊的数据类型: SET(集合类型)、ENUM(枚举类型)、BOOL/BOOLEAN(布尔类型),而多数开发人员,甚至DBA从业者对如何使用这三种数据类型的应用场景并不十分清晰,为此结合TINYINT数据类型对比,让我们大家一起弄清楚。
【导读】 针对四种数据类型:布尔类型BOOL或称布尔类型BOOLEAN、微整型TINYTINT、枚举类型ENUM、集合类型SET,我们已经分多篇文章篇幅给出详细的介绍与功能测试数据,接下来我们深入介绍枚举类型EUNM和集合类型SET。测试基于InnoDB存储引擎上,对MySQL数据库集合类型SET和枚举类型ENUM的字段进行DDL变更操作,是否需要重新创建表呢?对数据库的事务处理有何影响?对数据库的数据服务提供有何性能影响?
针对四种数据类型:布尔类型BOOL或称布尔类型BOOLEAN、微整型TINYTINT、枚举类型ENUM、集合类型SET,我们已经分多篇文章篇幅给出详细的介绍与功能测试数据,接下来我们深入介绍枚举类型EUNM和集合类型SET。测试基于InnoDB存储引擎上,对MySQL数据库枚举类型ENUM的字段进行DDL变更操作,是否需要重新创建表呢?对数据库的事务处理有何影响?对数据库的数据服务提供有何性能影响?
数据库从最早的打孔的方式记录数据,发展到网状数据库,且网状数据库应用较成熟与普遍,网状数据库也有其不能表达的数据关系,为此后来提出了层状数据库的理论,并且有相应产品的成功与应用,不过应用时间不长,业务应用范围不广泛,随机被关系数据库的理论所淹没而取代,关系数据库理论的基础之后数据库领域提出面向对象数据库和面对像关系混合型数据库的理论,并且也有相应产品的成功研发和应用,不过并没有像预测的那样,2010年将是面向对象数据库出现质飞跃的时间点。
运维人员必备每天都要面对报警信息,要即时处理,之前发送报警信息都是使用mail。或者短信猫来发送。 最近有个新的需求,要用手机来发短信,我就折腾下了飞信机器人。使用飞信来发送相关信息。
一个朋友有这样一个SQL查询需求: 有一个登录表(tmp_test),包含用户ID(uid)和登录时间(login_time)。
大家有没有接触过这样的需求,采集历史数据库中或者其他数据库中的某些信息,这些信息是另一个服务器需要执行sql的条件。通常我们的处理手段是把这个信息通过sql找出来或导出,然后使用脚本或者手工拼凑新的新的sql语句。在很多紧急情况下(产品bug、数据错乱)会产生这样的需求,这个时候处理的是在线数据库,不能有一点马虎、如果数据量稍微大一点,DBA们就够焦头烂额了。我之前也多次遇见这种情况,我把一些经验介绍给大家。 其实这种情况下使用concat+out file会得到事半功倍的效果。 比如我们需要找到user表中昨天登录过的用户,然后修改修改他们的garbage中某个物品的属性。
对于数据库这种特殊应用IOPS往往会成为瓶颈,突破的这个瓶颈的有效方法不多,软件方面主要是读写分离,垂直拆分,分区表技术,cluster。硬件方面主要是raid,和SSD。 通常都是软件和硬件同时优化,相对于成考考虑,硬件使用raid的情况较多,今天分享下硬件raid知识。
直到今天为止,MySQL依然只支持一个Slave从一个Master复制数据,虽然也可以做到一主多备(M->S),双主复制(MM)等架构,但是局限性依然很大。 例如最近我们遇到一个问题,需要为线上的集群搭建在线延时备份,即从线上的双主集群中再延伸出一组Slave,以防重要集群主备都宕机。按照现在MySQL的架构,要搭建这种在线备份,只能启动相同数据的实例来实现,假设线上有128个实例在提供服务,那么我就需要128个实例来做这128个实例的复制,这个管理成本是巨大的。 之前我们也有个方案,利用Perl脚本来做,参见这篇文章:点我阅读。这个方案的最大问题就是管理不方便,没有可以监控的地方,也不能随便停止脚本等等,如果完善这些部分,代码量太大,几乎就实现了一个MySQL Replication,那还不如利用MySQL的管理部分,在MySQL里实现多Master。
[导读] 相信大部分同学都已经可以熟悉操作puppet了,本小节接着上一小节,puppet如何创建目录树,以及有条件的删除过期文件, 而本节则是给我们了一个新的课题,是如何调度并确保资源运行,就是说,我不想在某个时间段运行某个资源,或者我在特定的时间
[导读] 大家都知道,puppet 同步文件都需要使用puppet 文件服务器,且同步大文件的效率比我们运维经常 使用到的rsync效率低且puppet 文件服务器只支持http和puppet 文件传输协议,幸运的是老外给我
在网站分析领域,Avinash是被大家顶礼膜拜的对象。对于网站分析,没有人能比Avinash更好地把它阐述得简洁有力,没有人比Avinash更理解互联网的用户行为,Avinash多年不懈的努力帮我们揭开了网站分析的神秘面纱。 上一篇博文分享了Avinash关于如何正确启动网站分析的观点,今天继续分享他的一些观点,确切说是一些忠告。为了赢得网站分析的胜利,Avinash的身上可谓伤痕累累,下面就是他在网站分析前线战斗多年后,分享给同行的3个重要忠告。
[导读] 上一篇puppet rsync使用教程,sky提到自定义函数,以及自定义provider和fact.本小节主要是介绍在puppet 下如何编写自定义函数,自定义函数在puppet 使用过程中有什么需要注意的地方,以及puppet 自定义函数是
在puppet cookbook系列文档中,sky就不至一次的提到过使用puppet 来管理软件包,而大多数 同学都会问,那我下载的.tar.gz的压缩包怎么办呢?那如何使用puppet来管理呢?
MySQL数据库外部XA可以用在分布式数据库代理层,实现对MySQL数据库的分布式事务支持,例如开源的代理工具:ameoba[4],网易的DDB,淘宝的TDDL,B2B的Cobar等等。
MySQL XA分为两类,内部XA与外部XA;内部XA用于同一实例下跨多个引擎的事务,由大家熟悉的Binlog作为协调者;外部XA用于跨多MySQL实例的分布式事务,需要应用层介入作为协调者(崩溃时的悬挂事务,全局提交还是回滚,需要由应用层决定,对应用层的实现要求较高).
引言 当前的“云计算”一词已经被神话,似乎快成了放之四海皆准的时髦真理,就好比当初言必称“希腊”一般,表面光芒四射,但实际上却无比教条、且越来越令人生厌。 作为“云计算”的一个普通开发者和是推广者,很有必要通过亲身实践,以正视听,希望能让后来者(云计算系统的开发者)少走弯路——有所为、有所不为。
[导读] 本次学习的内容是如何有效分发cron任务,有效分发,大家都懂的,以及如何解发更新puppet 动作,运维人员 都知道,通常配置文件变更,需要重新reload服务,以应用的新的配置文件.大家看过sky之前的文章,其中都有
教科书上的B+Tree是一个简化了的,方便于研究和教学的B+Tree。然而在数据库实现时,为了 更好的性能或者降低实现的难度,都会在细节上进行一定的变化。下面以InnoDB为例,来说说。
近3天十大热文
- [43] IOS安全–浅谈关于IOS加固的几种方法
- [43] 如何拿下简短的域名
- [42] Oracle MTS模式下 进程地址与会话信
- [42] 图书馆的世界纪录
- [41] 界面设计速成
- [40] android 开发入门
- [39] 【社会化设计】自我(self)部分――欢迎区
- [37] 读书笔记-壹百度:百度十年千倍的29条法则
- [36] 视觉调整-设计师 vs. 逻辑
- [34] 程序员技术练级攻略
赞助商广告