Percona-toolkit的安装和配置
pt工具是非常实用有效的一个工具集,对于诊断常规问题还是非常有效的,相比于Oracle的工具,MySQL中没有那么多复杂的数据字典,在实现方式上相对更加轻巧,主要都是针对日志的挖掘。在庞大复杂的日志中能够找出一些非常有效的信息,确实难能可贵。在官网上查看Percona的系列产品,可以看到Percona Toolkit的一个Logo好像是...
最近的几个技术问题总结和答疑
笔记写了不少,有时候有的朋友问我几个关键字,我就会从脑海里进行搜索,凡是写过的,搜索一下总能找到,帮助了别人,提高了自己,何乐而不为。 但是笔记写了很多,如果不加以改进,那么进步还是很小的,尤其比较怕的就是如果写出了问题的解决方案,但是这个解决方案是非...
运维平台的建设思考-元数据管理(三)
继第一篇,第二篇介绍了关于元数据的一些想法,最近做了一些改进。对于一部分的元数据抽取大体有下面的两种方式。假设数据源已经做了很大的努力,终于统一起来了。我们现在要通过ssh的方式从源端抽取出数据来。一种方式就是直接通过ssh的方式发送对应的查询脚本,然后可以得到一个完整的列表,二次加工即可。另外一种方...
一个慢查询报警的简单处理
今天在做节后的一个基本检查的时候,发现一个不太起眼的报警,报警内容为大体为:MySQL 每秒慢查询次数超过 个on xxxx查看zabbix的监控数据,发现每秒竟然有10个左右的慢查询,按照这个量,这个数据库得存在多大的问题啊。所以觉得可能是在做一个全表扫描导致的sql影响。这个数据库算是一个核心业务,而且负...
MySQL删除数据的简单尝试
在Oracle里面对于数据清理,如果是非分区表,目前我经常的处理思路是下面三个。第一种是中规中矩,做好备份,然后开始清理,当然这种情况只是说明数据清理的部分,不考虑高水位线的影响。可以使用shrink,move tablespace等来处理。补充一句,其实这个dump这是一种形式,可以采用各种形式的数据导出格式,比如sqlldr适用的...
关于几个MySQL环境问题的对比
有时候出现了环境问题,对比是一种很好的方式,如果对比得当,可以避免反复的出现问题,可以根据对比的情况推理出一些可能出现的情况或者问题。如果对比不当,很可能得出错误的结论。今天就简单举几个例子来说明一下。MySQL重启的对比之前出现过一次备机的硬件故障,但是庆幸的是幸亏是备机,备机上意味值有备库,但是实...
一个简单的MySQL参数导致的连接问题解惑
最近在做一套MySQL环境的数据迁移,需要把一部分数据从一个站点迁移到另外一个站点,新站点是一套全新的环境,对于MySQL的安装采用了同事建议的二进制方式。当然安装的过程比起Oracle的安装看起来要简单很多了。基本做到了一键安装的程度。因为对于MySQL还是有很多的盲点,所以感觉还是有些心虚,当然态度是虚心的了。可能...
多级复制的数据不同步问题
昨天刚到公司,开发的同事就找到我,让我帮他看看某一台mysql的库,似乎数据是不同步了。大体的意思是,A地库中的数据会同步到B地,B地的数据会同步到C地,C地就是开发最终需要访问的数据,这些业务都是独立的,但是一部分数据是需要同步的。听起来比较拗口,实现方式也比较有意思。采用了下面的方式来实现。列出一部分的...
从Java的类型转换看MySQL和Oracle中的隐式转换(二)
说起数据类型转换,在开发中如此,在数据库中也是如此,之前简单对比过MySQL和Oracle的数据类型转换情况,可以参见MySQL和Oracle中的隐式转换 http://blog.itpub.net/2371...
MySQL和Oracle中的隐式转换
今天在处理一个问题的时候,需要根据其他部门提供的sql语句对一个表中的数据进行了筛查。语句类似下面的形式> SELECT MAX_LEVEL,LOGOUT_TIME,CURRENT_DATE AS NOWTIME,cn_master FROM t_test_october_back_a WHERE ID in ( 100, 200, 300, 400, 500) ;+-----------+---------------+------------+-...
简单对比MySQL和Oracle中的一个sql解析细节
SQL的语法解析器是一个很强大的内置工具集,里面会涉及到很多的编译原理的相关知识,语法分析,词法分析。。一大堆看起来很理论的东东,不过看起来枯燥之余,它们的价值也更加明显。借用一下网络中的原话:如果我们考究一下历史,就会发现很多被称为程序设计大师的人都是编译领域的高手.写出第一个微型机上运行的Basic语言...
关于Oracle和MySQL中的无密码登录
无密码登录在一定程度上能够简化流程,对于密码敏感,但是又需要提供访问权限的情况下是一个不错的选择。尤其是在乙方在做一些操作的时候,要密码和给密码是一个纠结的问题。不给没法工作,给了又对信息安全又影响。在Oracle和MySQL中都有相应的解决方案,大道至简,这个功能的目的都是类似的。在Oracle中可以通过设置wal...
通过Oracle来辅助MySQL数据问题的恢复
今天琢磨一个问题,在平时的工作中如果碰到一些不规范的操作,drop,truncate,delete,恢复起来还是很困难的,drop操作在oracle中如果开启了recycle bin还是基本安全的,delete操作可以借助flashback delete操作,可能有些更细微的操作update,insert等等操作导致了问题,需要做数据修复的时候,这个时候可以使用flashback q...
由MySQL中的falcon存储引擎引申的八卦杂谈
今天在看这本书时 ,看到大师paul Dubois对于Falcon存储引擎的介绍,这是一种用来进行事务处理的存储引擎。在设计时增加了一些自我优化和免维护的功能,描述总体感觉和InnoDB很相似,不过整本书中讲解存储引擎的篇幅基本还是MyISAM和InnoDB为主。所以对Falcon产生了好奇,网络中对于Falcon的大体描述如下...
Linux下配置MySQL主从复制
MySQL的主从复制是自己一直想学习的一个实战经历,因为Oracle中的主从复制也是需要不少的配置选项,相比来说感觉重量级一些(数据量也重量级).今天试了一下,在本地的一台Linux虚拟机上简单模拟了一把,发现还是蛮有趣的。因为也是外行,所以为了快速达到效果,自己看了一个很早的视频,结果实际操作的时候,有好几个配置参...
MySQL和Oracle对比之存储过程
昨天晚上帮一个朋友处理了一个关于存储过程的问题,他需要迁移一些Oracle中的存储过程到MySQL中来,但是改了一部分的程序,发现MySQL中没法编译了,报了很多的错误。这个问题也比较典型,自己就趁热打铁总结了一下。因为隐私的关系还有代码长度的关系,我就不罗列代码了。假设Oracle中的存储过程如下,我们需要改写为MyS...
MySQL备份恢复第二篇
MySQL中的数据恢复功能相比Oracle来说还是要单薄一些,而Oracle中的数据恢复相对来说自动化的程度要高一些。不过Mysql的二进制日志提供的信息很丰富,而日志信息在Oracle中式完全屏蔽的,对于数据的恢复可能MySQL也很灵活。我们来模拟一下通过完整备份+增量备份(binlog)的方式来恢复。首先我们来选择一个表new_test作为恢...
MySQL备份恢复第一篇
今天学习了下MySQL的备份恢复内容,也算是对之前的 数据导入导出的一个细化内容。备份恢复的内容其实还是蛮复杂的,一般网站上提到的备份恢复也基本都是逻辑备份恢复的内容。对于更为高效的备份mysqlbackup是需要Licence,需要单独收费的,这也算是向oracle产品线的一个靠拢了。首先我们还是走走老路,来看看最基本的逻辑备...
MySQL和Oracle对比学习之事务
MySQL中的存储引擎很是丰富,常用的有InnoDB,MyISAM等,也查看了不少的资料,基本也有所了解,从一些参考书中看MySQL中的sql部分也是一扫而过,感觉和Oracle中的sql部分没有大的区别。因为InnoDB和MyISAM存储引擎的一个主要区别就是对于事务的支持,所以自己也复制了oracle中的想法。简单做了两个测试,只是想练手试一下,...
MySQL数据导入导出牛刀小试
最近学习了下MySQL中数据的导入导出,发现功能点真是丰富,很方便很快捷。这些导入导出的方式还是有不少的细节的,在此先不做扩展和深入分析。--数据导出 方式1比如要实现数据的导出,直接可以指定生成的文件使用outfile即可。对于空值的处理是“\N"mysql> select * from test into outfile '/u02/mysql/dump/a.sql';Q...