暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

2024/11/9

原创 杨豹 2024-11-09
83

自从开始负责公司的一个业务系统的开发之后,每天想的都是开发、上线、问题处理,对于dba这一块荒废好久,最近想重拾dba的技能。目前想整理的有几点:

  1. mysql监控
    对于oracle有awr,ash这一类的辅助报告,可以对某一时刻的数据库性能问题进行排查,但是mysql却感觉有点无从下手。唯一的途径是mysql slow log,但是如果slow log没开,或者开的阈值较高,或者sql没有使用绑定变量都会导致排查问题的方向出现差错。
    有没有一款软件可以解决这个问题,或者说有没有比较好的视图可以进行查询。
  2. postgresql熟悉
    之前在做某国际连锁超市的数据库项目时,他们用的就是postgresql,而我学的是oracle,在用postgresql时非常不习惯,读写都会互相阻塞,而且每天都要对数据库大小进行瘦身,否则第二天运行时很慢,所以我当时认为这是一个很差的数据库。不过随着这些年的发展,自己也想再去看看这个数据库现在是个什么情况。目前在关系型数据库稳稳的前4强(oracle,mysql,sqlserver,postgresql),sqlserver运行在windows平台上,虽然排名高,但是身边的确是没怎么见过。oracle和mysql都是oracle公司的,受政策影响较大,postgresql相对来说不易受到这方面的影响。而且国内一些数据库听说是基于postgresql进行的二次开发,后面专门写写关于这方面的学习。
  3. 数据库同步工具研究
    目前国内都在进行信创改造,但是也只能是逐步进行,主要是受限于信创库的稳定性,易用性,效率。那么就出现了一个问题,原先使用oracle的库,可能使用dblink能很好的进行分布式查询,这些信创数据库,虽然做一些设置也能进行分布式查询,不过效率很低,而对这类分布式查询的sql优化的确很难处理。现在最好的方法将数据库的数据直接同步到目标端,那么同步有两种,第一种是非实时,即每次去源端进行查询,然后插入到对端。这种方式的弊端就是只能处理insert,对于update和delete就无能为力,而且时效性不够。好处就是简单,基本上所有种类数据库都支持。第二种是实时,即从数据库的实时日志,比如redolog,binlog进行分析然后在目标端进行执行。优点是延迟低,能处理所有的数据库变化,缺点就是实现起来复杂。后面针对这两种情况进行学习。

紧迫性的话应该是 3 > 2 > 1,但愿在年底前能将这三样心愿完成。

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论