<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[IT匠人的专栏]]></title><description><![CDATA[数据库（ORACLE，MYSQL等）、操作系统（LINUX，HPUX，AIX）、PYTHON，IT杂项]]></description><link>https://blog.csdn.net/harryho</link><language>zh-cn</language><generator>https://blog.csdn.net/</generator><copyright><![CDATA[Copyright &copy; harryho]]></copyright><item><title><![CDATA[TCP连接出现大量CLOSE_WAIT不回收的问题排查]]></title><link>https://blog.csdn.net/harryho/article/details/134370485</link><guid>https://blog.csdn.net/harryho/article/details/134370485</guid><author>harryho</author><pubDate>Mon, 13 Nov 2023 09:59:22 +0800</pubDate><description><![CDATA[日常运维过程中，收到“应用A”突然挂起没有处理请求的告警，然后触发“存活检查”不通过，自动重启了。]]></description><category></category></item><item><title><![CDATA[20230725运维日记，快速记录一下k8s故障诊断]]></title><link>https://blog.csdn.net/harryho/article/details/131912163</link><guid>https://blog.csdn.net/harryho/article/details/131912163</guid><author>harryho</author><pubDate>Tue, 25 Jul 2023 10:33:25 +0800</pubDate><description><![CDATA[1）A组件所发的请求是否在“全链路”过程中全部转发， 发起方（客户端）、网络是否丢包或阻塞、clb是否有异常 、k8s的ingress是否转发。事件三、pod访问外部网络，打通的不只是所在宿主机的网络及安全组，理应把整个集群所有的宿主机的IP都需要放行。事件二、宿主机能够解析域名，但pod（容器）不行，这可能是coreDNS的问题。2）结果经过排查 k8s的ingress出现异常，没有及时转发。]]></description><category></category></item><item><title><![CDATA[kk运维日记，sqlplus / as sysdba 慢]]></title><link>https://blog.csdn.net/harryho/article/details/118193606</link><guid>https://blog.csdn.net/harryho/article/details/118193606</guid><author>harryho</author><pubDate>Thu, 24 Jun 2021 18:00:34 +0800</pubDate><description><![CDATA[aix 下sqlplus / as sysdba 登陆慢，可能是dns问题。

参考10年前文章：http://www.itpub.net/thread-1513521-1-1.html
]]></description><category></category></item><item><title><![CDATA[kk运维日记，ali canal adapter安装实录]]></title><link>https://blog.csdn.net/harryho/article/details/118147305</link><guid>https://blog.csdn.net/harryho/article/details/118147305</guid><author>harryho</author><pubDate>Wed, 23 Jun 2021 11:33:44 +0800</pubDate><description><![CDATA[介绍

canal 1.1.1版本之后, 增加客户端数据落地的适配及启动功能, 目前支持功能:

客户端启动器
同步管理REST接口
日志适配器, 作为DEMO
关系型数据库的数据同步(表对表同步), ETL功能
HBase的数据同步(表对表同步), ETL功能
(后续支持) ElasticSearch多表数据同步,ETL功能

软件

canal.adapter-1.1.5.tar.gz

canal adapter安装

解压


mkdir canal_adapter

tar xzvf canal.]]></description><category></category></item><item><title><![CDATA[KK日记，ali Canal Server 安装实录]]></title><link>https://blog.csdn.net/harryho/article/details/118117218</link><guid>https://blog.csdn.net/harryho/article/details/118117218</guid><author>harryho</author><pubDate>Tue, 22 Jun 2021 21:36:54 +0800</pubDate><description><![CDATA[介绍

https://github.com/alibaba/canal



安装介质

canal.deployer-1.1.5.tar.gz
canal.admin-1.1.5.tar.gz
canal.adapter-1.1.5.tar.gz

下载地址：https://github.com/alibaba/canal/releases

canal-server安装

安装包：canal.deployer-1.1.5.tar.gz

mkdir canal

tar xzvfcanal.dep..]]></description><category></category></item><item><title><![CDATA[【转】利用performance_schema进行故障诊断(mysql金字塔法则读书笔记)]]></title><link>https://blog.csdn.net/harryho/article/details/117628905</link><guid>https://blog.csdn.net/harryho/article/details/117628905</guid><author>harryho</author><pubDate>Sun, 06 Jun 2021 15:43:41 +0800</pubDate><description><![CDATA[instrunments:生产者，用于采集mysql中各种操作产生的事件信息，对应配置表中的配置项，我们可以称之为采集配置项。

consumers:消费者，对应的消费者用于存储来自instruments采集的数据，对应配置表的配置项，我们可以称之为消费存储配置项。

启用所有等待事件的instruments:

use performance_schema

update setup_instruments set enabled='yes',timed='yes' where name like 'w.]]></description><category></category></item><item><title><![CDATA[2021-05-14 kk日记，TBASE数据表更换shard key]]></title><link>https://blog.csdn.net/harryho/article/details/116786619</link><guid>https://blog.csdn.net/harryho/article/details/116786619</guid><author>harryho</author><pubDate>Fri, 14 May 2021 12:51:40 +0800</pubDate><description><![CDATA[一、背景

由于前期在进行数据导入时没有特别指定shard key，系统etl工具自动选择，导致当前的shard key不符合系统设计需求，需要重新构建分布键。



二、问题

如何重新构建shard key?



三、思路如下

1、 查阅相关资料及咨询tbase 产品技术支持，当前tbase是不支持在线更换table 的shard key。

2、 更换tbase 的shard key 采用离线方式进行，过程如下：

按一定规则生成需要更换shard key的表

select
(selec...]]></description><category></category></item><item><title><![CDATA[2021-04-30 TBASE不同版本的varchar长度]]></title><link>https://blog.csdn.net/harryho/article/details/116293417</link><guid>https://blog.csdn.net/harryho/article/details/116293417</guid><author>harryho</author><pubDate>Fri, 30 Apr 2021 09:59:57 +0800</pubDate><description><![CDATA[一、背景

我有两个tbase实例，一个版本是v5.02，另一个是v5.04 ，我把v5.02的数据倒入到v5.04时，总是报错“ value too long actual value(206)”之类的。

二、问题

为什么会出现“ value too long actual value(206)”？

三、分析

出现这个错误通常是插入的值超出字段长度最大值所致的。

1. 对比源和目标表结构和字段的长度。 发现是一致的。



2. 对比源和目标数据字符集是一致的。



3. 建立简单数...]]></description><category></category></item><item><title><![CDATA[2021-04-27 kk日记，oracle开发数据被删除调查]]></title><link>https://blog.csdn.net/harryho/article/details/116223797</link><guid>https://blog.csdn.net/harryho/article/details/116223797</guid><author>harryho</author><pubDate>Wed, 28 Apr 2021 09:10:28 +0800</pubDate><description><![CDATA[背景

今天，收到开发同学的通知“开发环节数据库部分表被重建了，导致数据丢失，开发受阻。”，帮忙查一下什么原因。



问题

为什么数据表被重建？为了解答这个问题，先要找到这个人，再问他的操作。



分析

1、 确认数据表被重建的时间点。

  select * from dba_objects where owner='XX' order by created desc;

2、根据时间点找到对应操作的用户，如果你的数据库管理做得好，打开了必要的审计是可以做得到的。否则这一步就变得有不确定...]]></description><category></category></item><item><title><![CDATA[2021-04-22 扩容是稳定性保障终极大招？]]></title><link>https://blog.csdn.net/harryho/article/details/116035189</link><guid>https://blog.csdn.net/harryho/article/details/116035189</guid><author>harryho</author><pubDate>Thu, 22 Apr 2021 23:45:32 +0800</pubDate><description><![CDATA[起因
前文提到我们在活动期间系统“挂了”20分钟，为了保障下次活动不“挂”，在产品和研发的指导下对应用系统进行扩容，扩容数量先按当前资源的一倍靠齐。
扩容真的能解决问题吗？
假设我们都是不差钱，不需要考虑roi
扩容在某些场景下非常有效，但在某些场景下就是就是杯水车薪。
那在那些场景下有效呢？

代码的响应时间比较低，最多不超过200ms，且并发请求远大于CPU数量时，增加CPU，有效。
线程在没有挂起，阻塞，死锁的情况下，线程数量不够，通过增加线程数量（本机内存足够的情况下，调整参数增加线程；横向增加实例]]></description><category></category></item><item><title><![CDATA[2021-04-15 kk日记，415系统支持战况总结]]></title><link>https://blog.csdn.net/harryho/article/details/115744242</link><guid>https://blog.csdn.net/harryho/article/details/115744242</guid><author>harryho</author><pubDate>Fri, 16 Apr 2021 02:14:25 +0800</pubDate><description><![CDATA[背景
今日公司进行面膜新品发布，新品分享有奖裂变活动，活动效果很好，异常火爆，可是系统很不争气挂了20分钟，作为系统支持的负责人觉得很惭悔，夜不能眠，在进行深深的自省。
过程回顾
作为系统支持负责人我是有一套系统稳定支持的理论：

活动方式/内容的理解
活动风险的评估
活动所需资源的评估
活动产品基础数据在系统核对
redis扣库存
生产验证
活动核心链路压测
服务台的故障时的指引与术语
限流的制定
慢URL的梳理
应急措施的制定
集思广益的风险梳理
活动前24小时变更冻结
现场支持人力锁定

为什么还是挂]]></description><category></category></item><item><title><![CDATA[Tbase基础积累二之数据迁移工具dbbridge]]></title><link>https://blog.csdn.net/harryho/article/details/112135544</link><guid>https://blog.csdn.net/harryho/article/details/112135544</guid><author>harryho</author><pubDate>Sun, 03 Jan 2021 16:18:33 +0800</pubDate><description><![CDATA[一、工具介绍

dbbridge是腾讯云提供的用于实现oracle、mysql等异构数据库迁移到Tbase、TDSQL的工具。目前只有私有化部署，要想获取安装包需要联系腾讯云的客服/技术支持。

dbbridge的功能其实蛮多的，可以实现tbase方向数据同步和把数据订阅到kafka.

二、安装过程

略，因为都是腾讯云的技术工程师帮忙安装的，所以偶也不知道怎么安装。

不过在未来公有云paas化的路上，懂不懂安装已经不重要了，重要怎么应用。

三、应用介绍

dbbridge提供四大功能：

迁移评估
]]></description><category></category></item><item><title><![CDATA[Tbase基础积累一]]></title><link>https://blog.csdn.net/harryho/article/details/112011169</link><guid>https://blog.csdn.net/harryho/article/details/112011169</guid><author>harryho</author><pubDate>Thu, 31 Dec 2020 15:09:42 +0800</pubDate><description><![CDATA[1、概述

Tbase 是在开源数据库postgresql的基础进行开发的高度兼容oracle语法的分布式数据库

具体查看：https://github.com/Tencent/TBase/wiki



2、架构图





Coordinator:协调节点(简称CN)，对外提供接口，负责数据的分发和查询规划，多 个节点位置对等，每个节点都提供相同的数据库视图;在功能上CN上只存储系统的全 局元数据，并不存储实际的业务数据。

Datanode:处理存储本节点相关的元数据，每个节点还存储业务数...]]></description><category></category></item><item><title><![CDATA[2020-09-01 kk日记，flask+flask-apscheduler的应用]]></title><link>https://blog.csdn.net/harryho/article/details/108351858</link><guid>https://blog.csdn.net/harryho/article/details/108351858</guid><author>harryho</author><pubDate>Tue, 01 Sep 2020 22:37:05 +0800</pubDate><description><![CDATA[1、前言

最近都在“玩”flask，其中玩的出发点就是即使是实验项目都应该有价值所在，所以在上一篇实现无广告看小说后，这次要进一步丰富系统的功能——后台作业定时检测小说是否更新，如果更新了就自动下载。

2、设计

有一个作业配置文件——jobconifg.py
	有一个作业前端，可以指定固定间隔执行程序，也可一删除作业。——shedule.html
前端布局比较low,大家不要计较。



flask主程序负责调用作业。
3、代码

3.1 jobconfig.py


# -*- coding: ut]]></description><category></category></item><item><title><![CDATA[2020-08-27 KK日记，记录一下使用flask做的看小说网站]]></title><link>https://blog.csdn.net/harryho/article/details/108255508</link><guid>https://blog.csdn.net/harryho/article/details/108255508</guid><author>harryho</author><pubDate>Thu, 27 Aug 2020 11:05:48 +0800</pubDate><description><![CDATA[1、前言

虽然一直干着运维的工作，但是对编程却有莫名的兴趣，于是就依仗着大学时的一些编程基础，在空闲时间自学了python、flask框架、bootstrap、jquery，html等。并用此写了一个看爽文的“工具”。



2、设计思路

通过爬虫爬取感兴趣的爽文，并将广告、飘窗过滤。



爬取后的爽文通过浏览器阅读，左边显示目录，通过点击目录，右边显示内容。



为了不占用个人电脑的空间暂时不保存爽文。



3、成品展示





4、撸码





4.1 构造flask


...]]></description><category></category></item><item><title><![CDATA[RocketMQ DLedger 多副本即主从切换配置]]></title><link>https://blog.csdn.net/harryho/article/details/105551321</link><guid>https://blog.csdn.net/harryho/article/details/105551321</guid><author>harryho</author><pubDate>Thu, 16 Apr 2020 10:07:28 +0800</pubDate><description><![CDATA[0、快速配置

背景补充

我是基于现有测试环境下3主3从的异步复制的集群下进行配置的。

没有过多考虑配置变更后rocketmq消息数据的一致性问题。建议在安装部署时就按改方案进行。

配置过程

为了完成这次配置看了好多资料，但是并没有任何一篇技术文档提供“傻瓜式配置”和注意事项，所以为了弄清楚一些概念和验证一些配置的必要性上花了较长的时间，最后回过头来看就是那么几个步骤：

1、 关闭需要配...]]></description><category></category></item><item><title><![CDATA[2020-01-03 KK日记，第一次进行postgresql 11.5+pgpool 安装]]></title><link>https://blog.csdn.net/harryho/article/details/103820009</link><guid>https://blog.csdn.net/harryho/article/details/103820009</guid><author>harryho</author><pubDate>Fri, 03 Jan 2020 14:47:10 +0800</pubDate><description><![CDATA[一、安装规划

安装单实例
	配置主从
	安装pgpool -ii
二、单实例安装

2.1 操作系统

os: centos 7.6

cpu: 4 core

memory:32g

disk: 60g

192.168.0.1

192.168.0.2

2.2 postgresql 软件准备

源码： postgresql 11.5



2.3 安装前检查

使用 yum instal...]]></description><category></category></item><item><title><![CDATA[2019-11-12 kk日记，使用python完成ora2pg的工作小结]]></title><link>https://blog.csdn.net/harryho/article/details/103035670</link><guid>https://blog.csdn.net/harryho/article/details/103035670</guid><author>harryho</author><pubDate>Tue, 12 Nov 2019 18:26:06 +0800</pubDate><description><![CDATA[一、案例

从商业数据库的使用转移到开源数据库是目前的潮流，所以我也不能免俗，在工作之中，抽出一点时间研究了一下，从oracle到pg到步骤。

二、问题

从oracle 到 pg 要解决一系列的问题，如：

在pg中使用什么架构能够实现oracle rac时的同样架构？
	oracle 中的sql/plsql代码如何改造？
	oracle 与 pg 的数据类型如何对应？
	如何把oracle的...]]></description><category></category></item><item><title><![CDATA[2019-09-12  KK日记，oracle 19c 容器数据初体验]]></title><link>https://blog.csdn.net/harryho/article/details/100916365</link><guid>https://blog.csdn.net/harryho/article/details/100916365</guid><author>harryho</author><pubDate>Tue, 17 Sep 2019 09:40:27 +0800</pubDate><description><![CDATA[一、案例

oracle 12c 以上数据库的其中一个新特性是容器数据库，在oracle官方文档上描述使用该新特性可以带来多个好处，具体如下：


1. Cost reduction

By consolidating hardware and database infrastructure to a single set of background processes, and efficien...]]></description><category></category></item><item><title><![CDATA[2019-03-11 KK日记，jboss jstack dump 线程状态研究]]></title><link>https://blog.csdn.net/harryho/article/details/88390608</link><guid>https://blog.csdn.net/harryho/article/details/88390608</guid><author>harryho</author><pubDate>Mon, 11 Mar 2019 11:38:56 +0800</pubDate><description><![CDATA[补充：jstack 使用，先找到java的进程号，然后执行jstack -l pid &amp;gt;&amp;gt; xxx.dmp

     vi xxx.dmp

1. 前端用户发起http连接请求。

2. jboss监听响应请求。

 2.1 如果thread pool有可用线程，则分配可用线程处理用户请求。显示如下，一般表示有空闲的线程。

    

 2.2如果th...]]></description><category></category></item></channel></rss>