摘要: 1、innodb的auto_increment应该在参考oracle的实现方式,定期持久化(mysql 8.0支持,mariadb 10.3支持序列); 我们目前遇到个问题,出于性能考虑,我们每天会把当天处理完成的数据归到另外一张历史表,并清空,同时有可能会重启mysql数据库,结果悲剧了,计数器重 阅读全文
posted @ 2016-08-10 09:28 zhjh256 阅读(215) 评论(0) 推荐(0) 编辑
摘要: 前两天运维反馈说,有些机器的max_allowed_packet隔两天就会被改成1024,导致客户端调用时出错,网上有说内存不够的,也有人工修改的。 运维小姑娘一口咬定肯定没有改过的,而且my.cnf中包含了。 昨天下班前开了general_log,早上过来grep "SET" | grep -A1 阅读全文
posted @ 2016-08-10 08:20 zhjh256 阅读(291) 评论(0) 推荐(0) 编辑
摘要: 由于是生产环境,且非笔者控制,为了避免影响系统全局,仅对本session有效 export LANG="zh_CN.UTF-8"export LANG="zh_CN.GB18030"export LANGUAGE="zh_CN.GB18030:zh_CN.GB2312:zh_CN"export SU 阅读全文
posted @ 2016-08-09 17:18 zhjh256 阅读(516) 评论(0) 推荐(0) 编辑
摘要: 今天为了模拟一个mysql内存不释放问题,要测试一个存储过程,同时具有出参和入参,启动时报了上述错误。 <select id="funcl_trd_secu_execution_query" resultMap="result_trd_secu_execution_query" statementT 阅读全文
posted @ 2016-08-09 16:32 zhjh256 阅读(1048) 评论(0) 推荐(0) 编辑
摘要: 首先,二进制日志会记录所有与MySQL数据库有关的日志记录,包括InnoDB、MyISAM、Heap(memory除外)等其他存储引擎的日志。而InnoDB存储引擎的重做日志记录有关该引擎本身的事务日志。 其次,记录的内容不同。无论用户将二进制日志文件记录的格式设为STATEMENT还是ROW,又或 阅读全文
posted @ 2016-08-08 07:43 zhjh256 阅读(401) 评论(0) 推荐(0) 编辑
摘要: 来新公司前,领导就说了,线上生产环境Mysql库经常会发生日间内存爆掉被killed的情况,结果来到这第一天,第一件事就是要根据线上服务器配置优化配置,同时必须找出现在mysql内存持续增加爆掉的原因,虽然我主业已经不是数据库更不是dba了。看了下mysql占用内存区域的分布: [root@iZ23 阅读全文
posted @ 2016-08-04 17:09 zhjh256 阅读(7713) 评论(2) 推荐(0) 编辑
摘要: 这两天发现公司好几台阿里云ECS上的mysql生产服务器繁忙期间io等待高达百分之二三十(估计九成是没有write back),而且确定是mysql进程产生,由于跑的应用过多,开发和维护无法直接确定哪些表繁忙,哪些表不繁忙。。。 为了找到根源,我们需要知道哪些文件、表的io读写量最高,然后进行针对性 阅读全文
posted @ 2016-08-02 16:14 zhjh256 阅读(1153) 评论(0) 推荐(0) 编辑
摘要: 假设原来是mysql 5.6.19社区版,现在要升级到percona server 5.6.30。 对于大的数据库来说,采用mysqldump方式进行迁移太花费时间了,可采用新安装加载原来数据库的方式大大节约升级时间。 对于mysql升级来说,一个主要的步骤就是升级后权限的同步更新以及数据表的校验。 阅读全文
posted @ 2016-08-02 14:52 zhjh256 阅读(670) 评论(0) 推荐(0) 编辑
摘要: 最近有些生产服务器老是mysql内存不停得往上涨,开发人员和维护反馈,用了不少的临时表,问题时常线上发生,测试又一直比较难重现。 经观察mysql内存的os占用趋势,发现从8:40开始,mysql内存逐渐上升,到下午1:30左右差不多占了整个系统90%多的物理内存。在业务较为繁忙的时间,还发生过好几 阅读全文
posted @ 2016-08-02 13:35 zhjh256 阅读(3911) 评论(0) 推荐(0) 编辑
摘要: [root@localhost mysql]# ./scripts/mysql_install_db --user=mysql -bash: ./scripts/mysql_install_db: /usr/bin/perl: bad interpreter: No such file or dir 阅读全文
posted @ 2016-08-02 13:03 zhjh256 阅读(29753) 评论(0) 推荐(1) 编辑
摘要: 昨天要还电脑了,结果脑子一抽,某个目录还没拷贝,shift+delete了整个目录,删除到一半,完了。。。我的源码都在里面还没出来啊。。。这TMD要命啊。。。 赶紧搜了一把,windows文件误删恢复的tools。。。 最后用Recuva破解版恢复了,有一点要注意的就是最后恢复的时候不能默认,得选全 阅读全文
posted @ 2016-07-29 10:31 zhjh256 阅读(525) 评论(0) 推荐(0) 编辑
摘要: 电脑重装了。。 eclipse换成了4.4.2,发现原来的easyexplorer不生效了(原来是4.2),搜了下,换成了open explorer即可。 方式一样,都是丢到eclipse/plugins,重启即可。 https://github.com/samsonw/OpenExplorer/d 阅读全文
posted @ 2016-07-29 10:25 zhjh256 阅读(201) 评论(0) 推荐(0) 编辑
摘要: 我的github仓库开通,https://git.oschina.net/zhjh256。 1、打开https://git.oschina.net/signup,没有账号的话,则新创建账号。 2、从https://github.com/git-for-windows/git/releases/dow 阅读全文
posted @ 2016-07-28 08:59 zhjh256 阅读(972) 评论(0) 推荐(0) 编辑
摘要: 我们知道,couchbase默认情况下就是N主的HA模式,bucket同时存储在多个节点中。如下所示: 但事实上,有些时候我们希望某些节点只能读,不能写以避免各种副作用以及分布式系统下出于管理和安全性目的的考虑。也就是达到如下的目的: 这种情况需要借助XDCR,也就是两个集群的方式来实现。如下所示: 阅读全文
posted @ 2016-07-28 08:27 zhjh256 阅读(548) 评论(0) 推荐(0) 编辑
摘要: 今日,开发反馈某台mysql服务器无法登陆,解决之后,远程登录后发现用户只能看到information_schema,其他均看不到。 故登录服务器执行: mysql> grant all on *.* to root@'%'; 报了ERROR 1045 (28000): Access denied 阅读全文
posted @ 2016-07-27 16:32 zhjh256 阅读(1000) 评论(0) 推荐(0) 编辑
摘要: 今日某系统mysql root用户kill connection时报ERROR 1095 (HY000): You are not owner of thread N 按说通过root用户具有super权限,不应该会出现这种情况,最后通过关闭客户端相关连接使得问题临时解决。 事后经测试,当sessi 阅读全文
posted @ 2016-07-26 17:28 zhjh256 阅读(4672) 评论(0) 推荐(0) 编辑
摘要: spring扫描classpath下特定package,并加载具有特定注解的接口。 在框架平台的开发中,通常有很多的情况通过spring配置方式来实现某些功能会使得框架平台难以使用和扩展,我们通常的做法是让业务用户实现特定的接口或者打上特定的注解标记,框架平台根据事先约定的注解或者接口对业务类进行处 阅读全文
posted @ 2016-07-26 10:53 zhjh256 阅读(431) 评论(1) 推荐(0) 编辑
摘要: 没事用mysql标准半同步、HA环境不要瞎折腾使用存储过程、触发器或galera cluster。 近期某个系统中的galera cluseter环境发生A DDL操作后,B节点未同步的情况,同时B节点的errorlog中有如下警告信息: 2016-07-23 17:31:32 18920 [War 阅读全文
posted @ 2016-07-26 10:20 zhjh256 阅读(697) 评论(0) 推荐(0) 编辑
摘要: 改进说明: 1、新增监控Mysql实例通过web控制台http://ip:port/hosts.html进行,无需更改mysql-jdbc.properties配置文件和spring-servlet.xml文件;无需重启tomcat。 更新发布地址:http://pan.baidu.com/s/1s 阅读全文
posted @ 2016-07-26 09:56 zhjh256 阅读(1124) 评论(1) 推荐(0) 编辑
摘要: 在某些情况下,我们在容器启动的时候做一些事情,举个例子,加载缓存等。。 此时我们会希望某个bean先被加载并执行其中的afterpropertiesset方法。 因为spring默认是根据是否有@Ordered注解(ordered和maven三方库依赖管理一样,也应该作为公共资源分配,这是正统方法) 阅读全文
posted @ 2016-07-26 08:08 zhjh256 阅读(4061) 评论(0) 推荐(0) 编辑
摘要: 现发布mysql awr v1.0.1 修复问题: 1、galera cluster下flush table/index_statistcs时如果系统中业务ddl频繁可能会导致很多进程处于preparing for TO ioslation,进而导致节点hang,改为增量模式实现。 下载地址:htt 阅读全文
posted @ 2016-07-22 09:23 zhjh256 阅读(301) 评论(0) 推荐(0) 编辑
摘要: 没事用mysql标准半同步、HA环境不要瞎折腾使用存储过程、触发器或galera cluster。 dbforge在galera cluster下debug存储过程hang。。。 经查看process list,dbforge cr_debug引擎使用了use_lock()函数,而galera cl 阅读全文
posted @ 2016-07-21 13:41 zhjh256 阅读(291) 评论(0) 推荐(0) 编辑
摘要: ​一个人最重要的是要有目标,哪怕很多人觉得你不合适这个目标,或者这个目标不被认同或者不被支持,近10年的工作经验告诉我,只要你想,盯着这个目标去努力,你就一定会达到这个目标,不论你来自什么学校,以前是做什么的。 无论是专业水平,自我认知感还是待遇,通常都会达到,虽然它不一定会在一家公司实现。 上次温 阅读全文
posted @ 2016-07-21 09:43 zhjh256 阅读(255) 评论(0) 推荐(0) 编辑
摘要: 现发布alpha版mysql awr,其提供的特性类似于oracle awr或smetspack+集中式监控。对于原来从事oracle dba或者相关运维的人原来说,这会是个不错的选择。 至于我为什么不选择用zabbix,monyog,nagios等等监控工具,相信各数据库专家们懂的。 系统逻辑结构 阅读全文
posted @ 2016-07-20 08:23 zhjh256 阅读(5149) 评论(0) 推荐(1) 编辑
摘要: 关于网上的各种性能测试帖子,我想说以下几点: 1、为了使性能测试更加的客观、实际,应该说明针对什么场景进行测试,查询、还是修改,是否包含了主键,包含了几个索引,各自的差别是什么。因为不同的mysql分支,之所以存在是因为有其解决的点存在,而不是为了山寨而山寨;更有甚者,甚至直接拿pg进行测试得出结论 阅读全文
posted @ 2016-07-14 09:03 zhjh256 阅读(212) 评论(0) 推荐(0) 编辑
摘要: V0.3相对于v0.2的更新如下: 如下: 提供了基于web的控制台: 1、日志级别、应用名称、主机名称会每个半小时自动从app_log中distinct更新,无需人工配置; 2、日志每隔半小时会清除5天以前的记录; 3、更新后的war地址为:http://pan.baidu.com/s/1gfdQ 阅读全文
posted @ 2016-07-12 16:38 zhjh256 阅读(529) 评论(1) 推荐(0) 编辑
摘要: 现成的分布式K/V缓存已经有很多的实现,最主要的比如redis,memcached,couchbase。那为什么我们还要自己去实现呢,在我们解决了分布式系统下大量rpc调用导致的高延时后,我们发现很多服务需要大量的访问分布式缓存,由于分布式缓存通常部署在单独的服务器中,在lan中,通常单次网络也需要 阅读全文
posted @ 2016-07-09 20:04 zhjh256 阅读(1229) 评论(4) 推荐(0) 编辑
摘要: 深入理解MySQL开发性能优化.pptx,依旧上传baidu pan http://pan.baidu.com/s/1jIwGslS,视频暂未出,培训完成后会更新。 阅读全文
posted @ 2016-07-04 08:21 zhjh256 阅读(257) 评论(0) 推荐(0) 编辑
摘要: https://files.cnblogs.com/files/blogs/285554/1-MySQL%E6%95%B0%E6%8D%AE%E5%BA%93%E8%AE%BE%E8%AE%A1%E4%B8%8E%E4%BC%98%E5%8C%96_v1.1%E6%9B%B4%E6%96%B0%E7 阅读全文
posted @ 2016-06-25 10:33 zhjh256 阅读(782) 评论(1) 推荐(0) 编辑
摘要: 周一,开发反馈weblogic 12c下jxls导出excel报错,公司环境和UAT环境均报错,看日志如下: 2016-06-08 09:16:55,825 ERROR org.jxls.util.TransformerFactory.createTransformer(TransformerFac 阅读全文
posted @ 2016-06-08 12:25 zhjh256 阅读(3365) 评论(0) 推荐(0) 编辑
摘要: 公司里面的很多部门都在广泛的采用元数据管理,也采用了公司内部开发的元数据管理工具,有些部门的实施效果一直非常好,而有些部门的效果则差强人意。这个问题,其实和软件系统开发完成进入维护阶段后成本居高不下的性质是一样的。 究其本质,是因为国内很多的公司对流程的重视程度多浮于表面,较少的深入去掌握实质部分。 阅读全文
posted @ 2016-06-03 22:01 zhjh256 阅读(373) 评论(0) 推荐(0) 编辑
摘要: 今天一原来的同事打电话说他们两个表加起来1.2t(每个表都有三四十个字段,6亿条记录),创建了索引之后空间增长到了2.2t,然后没有执行成功。问题在于虽然没执行成功,可是空间没有释放,整个系统只有2.2t的空间,现在是想数据备份出来也没法搞。于是就有了打电话给我这么一出。 个人本身不是做sql se 阅读全文
posted @ 2016-06-03 20:44 zhjh256 阅读(843) 评论(0) 推荐(0) 编辑
摘要: 最近一段时间在反复思考需求、概要设计、详细设计应该到各自什么粒度以及各自的界线是什么。 根据业务功能的不同,有些功能的设计要求很高,有些功能的实现要求很高。前者设计思考的非常清楚之后,找任何开发几乎都能够完成,典型的比如说在高并发的架构设计点如计数器、日常的增删改查、甚至复杂的业务流程。后者,比如说 阅读全文
posted @ 2016-06-03 13:17 zhjh256 阅读(621) 评论(0) 推荐(0) 编辑
摘要: 因为近来由于新项目的需要,各种招聘比较多,几乎每周都要面试几个人,顺便对以前的面试和带开发经验进行简单的总结 1、首先负责招聘的人一定得是自己团队的人,而且在招聘的时候一定要想清楚目标候选人进来的职责,开发为主还是技术支持为主,这两者的要求是相差很大的,更重要的是,这两者的候选人个性上可能就不同; 阅读全文
posted @ 2016-05-20 19:20 zhjh256 阅读(463) 评论(0) 推荐(0) 编辑
摘要: DB当然是第一重要,但是具体到选择oracle/mysql/postgresql亦或是mongodb,就需要有足够的的经验,主要要考虑如下点: 1、提供的feature是否足够丰富,能否满足OLTP/OLAP的需求; 2、是否支持高并发、HA机制(各优缺点、维护能否跟上、对开发有什么额外要求),这里 阅读全文
posted @ 2016-05-19 22:23 zhjh256 阅读(385) 评论(0) 推荐(0) 编辑
摘要: 假设rabbitmq配置了集群,且客户端连接rabbitmq-server通过lvs实现HA但一般情况下不建议做LB。在分布式系统的环境下,由于节点的非预知性,使用spring amqp模板进行配置不足以灵活到满足弹性扩展的需求,因此,更加方便的方式是通过rabbitmq原生的java client 阅读全文
posted @ 2016-05-19 22:01 zhjh256 阅读(415) 评论(0) 推荐(0) 编辑
摘要: 基于spring amqp rabbitmq fanout配置如下: 发布端 <rabbit:connection-factory id="rabbitConnectionFactory" username="guest" password="guest" host="localhost" port 阅读全文
posted @ 2016-05-18 08:35 zhjh256 阅读(1430) 评论(0) 推荐(0) 编辑
摘要: 在某些情况下,我们要根据当前的系统配置决定是否初始化一个bean,也就是条件性加载,比如本地缓存或者分布式缓存,亦或是采用http实现或者socket实现。在spring 4.x中,可以使用新增的@Conditional注解进行实现,在spring 3.x中,我们可以通过采用@Lazy延迟初始化+A 阅读全文
posted @ 2016-05-17 20:12 zhjh256 阅读(312) 评论(0) 推荐(0) 编辑
摘要: 完整的定时任务解决方案Spring集成+定时任务本身管理+DB持久化+集群 maven依赖 <dependency> <groupId>org.quartz-scheduler</groupId> <artifactId>quartz</artifactId> <version>2.2.1</ver 阅读全文
posted @ 2016-05-17 08:29 zhjh256 阅读(1840) 评论(0) 推荐(0) 编辑
摘要: 原博客地址http://blog.chinaunix.net/uid/20656672.html不再维护(数百篇oracle/teradata性能优化、故障处理原创文章) 阅读全文
posted @ 2016-05-16 13:31 zhjh256 阅读(682) 评论(0) 推荐(0) 编辑