文章分类 -  MYSQL

摘要:开篇说明 Galera Cluster 其实可以在每个结点进行读写操作,没有什么读写分离的概念。本文重点是讲 MariaDB 如何组建 Galera Cluster 环境,以及如何在MyCat中进行MariaDB集群多机联动的配置。 当然不用MyCAT作为数据库集群的前置也OK,还可用HA LVS等 阅读全文
posted @ 2017-01-03 17:49 luckc# 阅读(180) 评论(0) 推荐(0) 编辑
摘要:原文链接:http://blog.csdn.net/xyang81/article/details/51759200 安装环境:CentOS7 64位 MINI版,安装MySQL5.7 1、配置YUM源 在MySQL官网中下载YUM源rpm安装包:http://dev.mysql.com/downl 阅读全文
posted @ 2017-01-03 17:02 luckc# 阅读(122) 评论(0) 推荐(0) 编辑
摘要:一、概述 当 MySQL的总记录数超过了100万后,会出现性能的大幅度下降吗?答案是肯定的,但是,性能下降>的比率不一而同,要看系统的架构、应用程序、还有>包括索引、服务器硬件等多种因素而定。当有网友问我这个问题的时候,我最常见的回答>就是:分表,可以根据id区间或者时间先后顺序等多种规则来分表。分 阅读全文
posted @ 2016-12-30 15:26 luckc# 阅读(123) 评论(0) 推荐(0) 编辑
摘要:数据库性能优化普遍采用集群方式,oracle集群软硬件投入昂贵,今天花了一天时间搭建基于mysql的集群环境。 主要思路 简单说,实现mysql主备复制-->利用mycat实现负载均衡。 比较了常用的读写分离方式,推荐mycat,社区活跃,性能稳定。 测试环境 MYSQL版本:Server vers 阅读全文
posted @ 2016-10-17 09:57 luckc# 阅读(1012) 评论(0) 推荐(0) 编辑
摘要:Cobar 是阿里巴巴开源的一个数据库中间件,为了解决类似proxy这类的问题。目前同类型的有奇虎360开源的Atlas。类似的有基本在线上用起来很不爽,问题多多的比如MySQL Proxy和SQL Relay,基本可以忽略。 Cobar 下载:https://github.com/alibaba/ 阅读全文
posted @ 2016-10-17 09:52 luckc# 阅读(726) 评论(1) 推荐(0) 编辑
摘要:http://hualong.iteye.com/blog/2102798 这几天研究了下Cobar, Cobar是阿里巴巴研发的关系型数据的分布式处理系统(Amoeba的升级版,该产品成功替代了原先基于Oracle的数据存储方案,目前已经接管了3000+个MySQL数据库的schema,平均每天处 阅读全文
posted @ 2016-10-11 16:07 luckc# 阅读(494) 评论(0) 推荐(0) 编辑
摘要:今天在学习JDBC的时候看到了关于MySql的事务的隔离级别的问题,感觉内容挺高级的,所以记录一篇文章,以备后面使用。数据库隔离级别有四种,应用《高性能mysql》一书中的说明:这四种隔离级别采取不同的锁类型来实现,若读取的是同一个数据的话,就容易发生问题。例如: 脏读(Drity Read):某个... 阅读全文
posted @ 2014-11-13 10:57 luckc# 阅读(268) 评论(0) 推荐(0) 编辑
摘要:除了PHP在代码里设置读写分离外,还可以在软件层次读写分离:MySQL Proxy就是一个连接池,负责将前台应用的连接请求转发给后台的数据库,并且通过使用lua脚本,实现复杂的连接控制和过滤,从而实现读写分离和负载平衡。对于应用而言,MySQL Proxy是完全透明的,应用则只需要连接到MySQL ... 阅读全文
posted @ 2014-10-27 11:41 luckc# 阅读(348) 评论(0) 推荐(0) 编辑
只有注册用户登录后才能阅读该文。
posted @ 2014-06-24 11:39 luckc# 编辑
摘要:初步的键值比较,MongoDB完胜快还要更快,这一直都是我们给予数据库系统的目标MySQL Dragster把磁盘的速度当作它的最大障碍,这真的能说通吗?姑且就把作一个障碍,那解决方案呢?!如果一个障碍限制了你的Dragster,你完全可以选择更快的绕过它或者在计算机方面提升。举个例子:避免使用磁盘,尽可能的以内存替代用更快的磁盘(如SSD)其实上面这对类比并不好,因为来自磁盘的限制是如此之大,而且出人意料的是从未得到过改善。你可能会说,我们不是有SSD吗?对,这的确让硬盘得到了提升,但是别忘了:CPU和RAM提升的速度比之硬盘来的更快!但是不妨假设一下,我们的内存大到可以直接取代硬盘了,那么 阅读全文
posted @ 2012-09-07 11:17 luckc# 阅读(299) 评论(0) 推荐(0) 编辑
摘要:SQL code--创建索引时的注意事项/******************************************************************************** *主题:创建索引时的注意事项 *说明:本文起点可能会相对高点,首先你的很熟悉索引以及他们的存储结构 * 有很多地方你可能觉得有异议,欢迎一起讨论 *作者:Beirut(小爱) *日期: 2012.07.21 *另外:转载请着名出处。*****************************************************************************... 阅读全文
posted @ 2012-08-20 13:47 luckc# 阅读(302) 评论(0) 推荐(0) 编辑
摘要:在MySQL中的ORDER BY有两种排序实现方式:1.利用有序索引获取有序数据 取出满足过滤条件作为排序条件的字段,以及可以直接定位到行数据的行指针信息,在 Sort Buffer 中进行实际的排序操作,然后利用排好序的数据根据行指针信息返回表中取得客户端请求的其他字段的数据,再返回给客户端.1.1 按照索引对结果进行排序:order by 使用索引是有条件1)只包括在有选择的此列上(select后面的字段),不一定适应*的情况):CREATE TABLE `test` ( `id` int(11) NOT NULLAUTO_INCREMENT, `rdate` datetime NOT N 阅读全文
posted @ 2012-08-02 14:09 luckc# 阅读(970) 评论(0) 推荐(0) 编辑
摘要:1.数据库的对象: 1)选择表合适存储引擎:MyISAM: 应用时以读和插入操作为主,只有少量的更新和删除,并且对事务的完整性,并发性要求不是很高的. Innodb: 事务处理,以及并发条件下要求数据的一致性。除了插入和查询外,包括很多的更新和删除。(Innodb有效地降低删除和更新导致的锁定) Memory:数据保存在RAM,快速访问数据。要求表不能太大或者对mysql异常终止后不用恢复数据的 Merge: 2)优化表的数据类型,选择合适的数据类型: 原则:更小通常更好,简单就好,所有字段都得有默认值,尽量避免null: 例如: 数据库表设计时候更小的占磁盘空间尽可能使用更小的整数类型.(m 阅读全文
posted @ 2012-08-02 14:06 luckc# 阅读(356) 评论(0) 推荐(1) 编辑
摘要:在某些情况下,or条件可以避免全表扫描的。1 .where 语句里面如果带有or条件, myisam表能用到索引, innodb不行。1)myisam表:CREATE TABLE IF NOT EXISTS `a` ( `id` int(1) NOT NULL AUTO_INCREMENT, `uid` int(11) NOT NULL, `aNum` char(20) DEFAULT NULL, PRIMARY KEY (`id`), KEY `uid` (`uid`)) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=6 ;mysql 阅读全文
posted @ 2012-08-02 13:51 luckc# 阅读(1057) 评论(1) 推荐(0) 编辑
摘要:B-树1 .B-树定义B-树是一种平衡的多路查找树,它在文件系统中很有用。定义:一棵m 阶的B-树,或者为空树,或为满足下列特性的m 叉树:⑴树中每个结点至多有m 棵子树;⑵若根结点不是叶子结点,则至少有两棵子树;⑶除根结点之外的所有非终端结点至少有[m/2] 棵子树;⑷所有的非终端结点中包含以下信息数据:(n,A0,K1,A1,K2,…,Kn,An)其中:Ki(i=1,2,…,n)为关键码,且Ki<Ki+1, Ai为指向子树根结点的指针(i=0,1,…,n),且指针Ai-1 所指子树中所有结点的关键码均小于Ki (i=1,2,…,n),An 所指子树中所有结点的关键码均大于Kn. .. 阅读全文
posted @ 2012-08-02 12:43 luckc# 阅读(450) 评论(0) 推荐(0) 编辑
摘要:今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显。关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我们程序员需要去关注的事情。当我们去设计数据库表结构,对操作数据库时(尤其是查表时的SQL语句),我们都需要注意数据操作的性能。这里,我们不会讲过多的SQL语句的优化,而只是针对MySQL这一Web应用最多的数据库。希望下面的这些优化技巧对你有用。1. 为查询缓存优化你的查询大多数的MySQL服务器都开启了查询缓存。这是提高性最有效的方法之一,而且这是被MySQL的数据库引擎处理的。当有很多相同的查询被执行了多次的时候,这些查询结果会被放到一个缓存中,这样,后 阅读全文
posted @ 2012-06-20 12:56 luckc# 阅读(239) 评论(0) 推荐(0) 编辑
摘要:MySQL的混和引擎设计是优点不是缺点, 除了MyISAM、InnoDB,MySQL还有 BDB、MEMORY、MERGE、EXAMPLE、NDBCluster、ARCHIVE、CSV、BLACKHOLE、FEDERATED 等存储引擎,具体怎么使用要看应用场景。对于,MyISAM和Innodb两种存储引擎,最大的区别是Innodb引擎支持事务等高级特性,MyISAM不支持事务;其次,Innodb支持行锁,MyISAM是表锁,锁的粒度支持不一样,对于并发写操作性能影响较大。那么很显然,在做数据库建模设计时,对于需要事务支持的交易表当然需要选择Innodb,而对于没有事务需求的表,例如字典表、日 阅读全文
posted @ 2012-06-09 23:39 luckc# 阅读(307) 评论(0) 推荐(0) 编辑
摘要:MySQL主从复制(Master-Slave)与读写分离(MySQL-Proxy)实践Mysql作为目前世界上使用最广泛的免费数据库,相信所有从事系统运维的工程师都一定接触过。但在实际的生产环境中,由单台Mysql作为独立的数据库是完全不能满足实际需求的,无论是在安全性,高可用性以及高并发等各个方面。因此,一般来说都是通过 主从复制(Master-Slave)的方式来同步数据,再通过读写分离(MySQL-Proxy)来提升数据库的并发负载能力 这样的方案来进行部署与实施的。如下图所示:下面是我在实际工作过程中所整理的笔记,在此分享出来,以供大家参考。一、MySQL的安装与配置具体的安装过程,建 阅读全文
posted @ 2012-06-09 22:55 luckc# 阅读(118687) 评论(12) 推荐(18) 编辑
摘要:作为DBA,经常会碰到导入导出数据的需求,本篇就介绍了mysqldump和load data这两种方法。使用mysqldump时可以加上一些参数,dump需要的数据。重点介绍了使用load data导入时遇到的2个问题及解决方法。1、 整个库的导出导入用mysqldump命令,可以只导出表结构,也可以连数据一起导出,看需求。可以用mysqldump 导出整个库,也可以导出单个表。例如:将整个test库导出,包括表结构、数据:[mysql@my101 data]$ mysqldump -uroot test > test.txt将test库中导出的所有表、数据,导入到pyt库:[mysql 阅读全文
posted @ 2012-06-08 11:18 luckc# 阅读(221) 评论(0) 推荐(0) 编辑
摘要:“And God said, Let there be network: and there was timeout”在使用MySQL的过程中,你是否遇到了众多让人百思不得其解的Timeout?那么这些Timeout之后,到底是代码问题,还是不为人知的匠心独具?本期Out-man,讲述咱们MySQL DBA自己的Timeout。先看一下比较常见的Timeout参数和相关解释:connect_timeoutThe number of seconds that the mysqld server waits for a connect packet before responding with B 阅读全文
posted @ 2012-06-08 11:17 luckc# 阅读(468) 评论(0) 推荐(0) 编辑