自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(47)
  • 资源 (1)
  • 收藏
  • 关注

原创 【问题解决】canal column size is not match for table

位置原因导致的同步中断com.alibaba.otter.canal.parse.exception.CanalParseException: com.alibaba.otter.canal.parse.exception.CanalParseException: parse row data failed.Caused by: com.alibaba.otter.canal.parse.exception.CanalParseException: parse row data failed.Caus

2021-10-22 11:19:20 760

原创 MySQL 升级

1.配置慢速关闭set global innodb_fast_shutdown=0;2. 解压新的压缩包tar xvf mysql-5.7.29-linux-glibc2.12-x86_64.tar.gz3. 关闭原实例systemctl stop mysql33074. 替换安装包mv mysql3307/ mysql3307_bakmv mysql-5.7.29-linux-glibc2.12-x86_64 /usr/local/mysql3307cp my3307.cnf …/…/m

2021-09-23 16:32:21 108

原创 mysql tookit 之 dble(3)dble本身ha

dble本身的ha主要有两种1.通过haprox f5等负载均衡组建2.通过zk来搭建dble集群这次主要通过haproxy来 搭建dble组1.在原来的基础上在起一个dble拷贝一个目录cp -r dble dble2修改端口,其他的为了简单都不动了。wrapper.java.additional.6=-Dcom.sun.management.jmxremote.port=1985启动[root@localhost conf]# mysql -P8067 -h 127.0.0.1

2021-09-10 18:31:51 186

原创 mysql tookit 之 dble(2)修改一些配置

修改一些配置测试1.修改test表的主键通过dble全局自增1.修改schema.xml2.重新加载配置:登入管理端口,重新加载配置:dryrun;reload @@config3.测试:insert into testdb.test(userid,other) values(100006,'22222');能自动生成全局的序列 这默认是时间戳方式全局的序列2.新建分区表的步骤1.在schema.xml新增表;2.reloadreload @@config3.创建表:create

2021-09-10 15:20:10 140

原创 mysql tookit 之 dble(1)基本 demo

dble简单安装:我们现在用的2.19.xx版本为例:download:https://opensource.actionsky.com/dble/安装:解压: tar安装到标准路径 /usr/local/dble 下面目录说明:[root@localhost dble]# tree -L 1.├── algorithm├── bin├── conf├── dble.pid├── lib├── logs├── tmlogs├── version.txt└── viewCo

2021-09-09 15:21:01 142

原创 mysql tookit 之 slowlog回旋

问题mysql 很可能slowlog增长过快,引发的磁盘空间问题。可以使用logrotate进行日志的回旋;使用配置:1.安装(略) 默认centos系统安装自带logrotate2.配置路径是在:/etc/logrotate.d/创建配置文件: vim /etc/logrotate.d/mysqllog/data/mysql/mysql3316/data/slow.log{ missingok #如果日志不存在,不会报错 notifempty #如果日志为空,则不轮换 d

2021-09-08 16:01:36 93

原创 mysql tookit之binlog2sql

文档及下载:https://github.com/danfengcao/binlog2sql安装注意点:1.需要python2.7以上2.字符集可能出现问题,生成回滚语句;可以参考:https://github.com/danfengcao/binlog2sql/issues/33基本使用:1.生成使用语句:python binlog2sql.py --flashback -uxxx -p’xxxxxxx’ -h xxx.xxx.xxx.xxx -ddbname -t table1 tab

2021-08-30 11:17:31 74

原创 数据库管理平台计划

1.说明接下来用一个季度的时间挑战下完成一个简单的数据库管理平台。应为自己本人很喜欢梅西,近期转会穿上30号,就取名(GOAT30)。自己时刻督促自己完成这个挑战。主要是学习为主,故界面和优化及代码等暂时先忽略2.主要的功能这边只做个简单功能的说明。主要解决DBA mysql管理中最头疼的问题。2.1 实例管理2.2 SQL审核2.3 SQL查询2.3 SQL优化2.4 数据归档2.5 binlog解析2.6 数据库备份2.7 数据库管理2.8 安装类管理3.目前主要的规划的技术

2021-08-30 10:13:19 59

原创 scripts-mongo后台加索引

很小的一个脚本,就来后台执行比如backgoup 加索引等;其他谢谢也几十秒钟搞定#!/bin/bashIP_=xxxxPORT_=27017USER_=xxxxxPASSWORD_=xxxxxxDB_=xxxxcommand_=$1function log() {echo "[$(date +"%Y-%m-%d %H:%M:%S")] $(printf "%s" "$@")"}log "[info] start command!"/usr/local/mongodb/bin/

2021-08-26 15:36:35 161

原创 mysql tookit之tcprstat

1.安装wget http://github.com/downloads/Lowercases/tcprstat/tcprstat-static.v0.3.1.x86_64cp tcprstat-static.v0.3.1.x86_64 /usr/bin/tcprstatchmod +x /usr/bin/tcprstat2.使用:tcprstat -p 3306 -t 1 -n 5bonding模式 虚拟网卡情况下需要如果运行的时候提示 pcap: SIOCGIFFLAGS: bondi

2021-08-25 11:04:05 102

原创 面试问题总结

Redis1. redis cluster key分配原则2.如何获取redis的热key和大key3.redis cluster 做加节点操作带来的问题MySQL1.pt-osc 加字段原理,为什么 没有出现table not found的问题2.大表drop为什么会hung?

2021-08-17 22:42:06 42

原创 druid连接池的参考配置

druid连接池的参考配置:

2021-08-16 08:37:12 71

原创 Mysql行结构

说明本文主要是学习笔记,来源https://imysql.com/2020/07/12/innodb-record-header-and-page-overflow.shtml自己重新做了总结,完整请看老叶茶馆----及参加培训课程测试准备1.表mysql> show create table t1\G*************************** 1. row ***************************Table: t1Create Table: CREATE

2021-04-24 15:44:20 183

原创 SQL分析的三种方式

EXPLAIN (desc)mysql> use accp_payment;Database changed±—±-------------------±------±-----±----------------------------------±----------------------------------±--------±---------------------------±---------±------------+| id | select_type | t

2021-04-13 19:35:10 205

转载 mysql pt_xbackup原理

1 首先会启动一个xtrabackup_log后台检测的进程,实时检测mysql redo的变化,一旦发现redo有新的日志写入,立刻将日志写入到日志文件xtrabackup_log中2 复制innodb的数据文件和系统表空间文件idbdata1到对应的以默认时间戳为备份目录的地方3.xtrabackup 拷贝完成idb后,通知 innobackupex(通过创建文件),同时自己进入等待(redo 线程仍然继续拷贝)4. 复制结束后,执行flush table with read lock操作:i.

2021-04-12 17:04:58 256

原创 单向链表反转

链表时间复杂度:Insert O(1)Delete O (1)search O(n )单向链表反转class Solution: def __init__(self, elem, next_=None): self.var = elem self.next = next_def reverseList(head): cur = head pre = None while cur: tmp = cur.ne

2021-04-10 15:11:41 54

原创 mysql binlog提交过程1

1.什么是2PC2PC,二阶段提交协议,事务的提交过程分为两个阶段来进行处理:准备阶段和提交阶段阶段1:准备阶段 1、协调者向所有参与者发送事务内容,询问是否可以提交事务,并等待所有参与者答复。  2、各参与者执行事务操作,将Undo和Redo信息记入事务日志中(但不提交事务)。  3、如参与者执行成功,给协调者反馈YES,即可以提交;如执行失败,给协调者反馈NO,即不可提交。阶段2:提交阶段   此阶段分两种情况:所有参与者均反馈YES、或任何一个参与者反馈NO。  所有参与者均反馈YES

2021-04-07 21:42:41 388

原创 mysql用户连接过程

连接方式TCP/IP(linux)这一般意义上也可以称为socket,使用tcp/ip协议来连接。一般的远程连接都是这种方式。Unix Socket(linux)这边的指的是unix socket,UNIX Socket连接方式其实不是一个网络协议,所以只能在MySQL客户端和数据库实例在同一台服务器上的情况下使用比如mysql登入使用 socket=/mysql/tmp/mysql3006.sockname pipe(windows)named pipe方式对于远程访问是无效的,要想达到远

2021-03-22 23:52:15 459

原创 MySQL总体知识结构

最近准备梳理一下自己的知识结构,以后会每天督促自己每天写一篇总结。MYSQL知识体现结构1.基本体系结构1.1 内存结构1.2 文件系统2.SQL语法管理2.1 管理与权限2.2 dml2.3 ddl3.高可用管理4.周边工具5.监控运维6.分库分表7.常见问题8.优化相关9.线上问题记录...

2021-03-21 23:00:56 105 1

原创 MYSQL(二) 特性 change buffer(1)

什么是change bufferThe change buffer is a special data structure that caches changes to secondary index pages when those pages are not in the buffer pool.The buffered changes, which may result from INS...

2019-10-15 14:13:01 283

原创 Mysql 2PC提交

1.什么是2PC2PC,二阶段提交协议,事务的提交过程分为两个阶段来进行处理:准备阶段和提交阶段阶段1:准备阶段 1、协调者向所有参与者发送事务内容,询问是否可以提交事务,并等待所有参与者答复。  2、各参与者执行事务操作,将Undo和Redo信息记入事务日志中(但不提交事务)。  3、如参与者执行成功,给协调者反馈YES,即可以提交;如执行失败,给协调者反馈NO,即不可提交。阶段2:...

2019-09-27 09:19:54 938

转载 16进制对应ASCII

有时候看一些dump 日志之类的,16进制脑子转不过来,装成ascii。找了个对应表记录下。转自:https://blog.csdn.net/wangchaoqi1985/article/details/80998531原文:http://www.javaxxz.com/thread-367347-1-1.html...

2019-09-05 09:47:19 223

原创 RAC开启大页

操作步骤如下:1.备份spfilecreate pfile=’/tmp/spfile.bak’ from spfile;2.两个节点关闭透明大页vim /etc/grub.conf增加:transparent_hugepage=never3.调整SGAalter system set sga_max_size=165G sid=‘instance_name’ scope=spfil...

2019-07-15 11:26:02 403

原创 TIDB升级-监控升级

tidb升级3.0GA版本过程略,升级过程中几乎无影响,有个其他均正常问题到了升级监控的这一部报错: ansible-playbook rolling_update_monitor.yml报错:重试后发现一样的问题;仔细看怀疑是grafana用户密码的问题。密码中有“@”修改grafana密码1.找到:data.grafana在安装的deploy2.sqlite3 /v...

2019-07-02 17:26:07 212

原创 Mysql 一条语句的执行过程(2) 补充

字段名称有误的sql解析select * from test2 where kkk=2;有兴趣测了下这个kkk列不存在的时候什么时候出错已了解下对sql的解析过程对应的代码路径:Breakpoint 1, dispatch_command (thd=0x7efac40124f0, com_data=0x7efb3a9e2d80, command=COM_QUERY) at /roo...

2019-06-12 20:44:44 162

原创 Mysql 一条语句的执行过程

执行步骤1.客户端连接到服务器,发送一条查询2.服务器检查是否有开启查询缓存。如果有开启则判断是否命中,如果有命中则进入下一步如果没有开启,则进入解析器3.解析器做词法分析,比如是什么语句、之后再做语法分析。4.优化器选择执行计划5.调用存储引擎的API去执行器执行,6.结果返回给客户端具体实现连接服务端,发送一条SQLmysql 支持3种连接方式:socketnamed ...

2019-06-12 01:30:02 336

原创 MYSQL gdb简单调试搭建

下载及环境准备:下载源码上传为了方便直接yum 安装cmake 2.8以上[root@test ~]# cmake --versioncmake version 2.8.12.2测试cd mysql-5.7.25cmakecmake \-DCMAKE_INSTALL_PREFIX=/root/mysql-5.7.25 \-DMYSQL_DATADIR=/usr/local/my...

2019-06-04 17:20:46 876

原创 MYSQL MHA搭建-实测

环境:mysql 5.7.25+MHA(0.58)+redhat6.9下载及文档http://code.google.com/p/mysql-master-ha/分别下载:mha4mysql-node-0.58mha4mysql-manger-0.58版本要选下,主页的版本,编译的时候失败安装1.安装node[root@DEV-ZZZZ] mha4mysql-node-0.5...

2019-05-28 20:38:52 411

原创 MYSQL 脏页刷新

起因昨天看了CSDN推送的一篇《腾讯面试:一条SQL语句执行得很慢的原因有哪些?》里面主要提到了1.数据库在刷新脏页的时候会导致SQL很慢2.锁的问题3.sql本身的问题下面主要对刷脏页理解,自己总结下mysql 刷脏块的几种情况1.redo日志切换2.buffer pool不足3.mysql 自己觉得空闲4.mysql正常关机上面的3,4两种情况可以忽略他们对性能的印象。...

2019-05-16 11:43:40 2149

原创 ORACLE RMAN备份恢复单个表空间

原因单个库可能有很多的冗余数据,比如查询库,通过ogg等方式同的数据,当这台库上做其他的分析或者是另一个有业务的主库的时。就有需求做备份恢复。但是本身是一个查询库,整库rman备份非常的慢。通过nbu或者rman可以备份单个schema(一个schema对应一个表空间),这样速度快,恢复快。步骤1.准备好参数文件(略)2.获取控制文件,启动到mountstartup nomount;...

2019-05-14 13:37:24 2552

原创 tidb扩容tikv节点

步骤只要按照官方文档来,可能会遇到的错误,记录了下。准备编辑 inventory.ini,加入新加节点。初始化新增节点ansible-playbook bootstrap.yml -l xxxxx.xxx.xxx会报错如下TASK [bootstrap : gather facts] **************************************************...

2019-05-10 18:05:55 1151

原创 MYSQL(一) 事务(3) undo

undo的概况mysql undo 是mvcc主要的实现环节。Undo记录默认备记录到系统表空间内,也可以使用单独的undo 表空间。undo的结构undo 使用 rollback segements管理;手册下结构的描述:InnoDB supports a maximum of 128 rollback segments, 32 of which are allocated to th...

2019-04-30 19:09:50 1202

原创 mysql redo log

学习笔记,mtr章节的学习见最后阿里月报。REDO LOGThe redo log is a disk-based data structure used during crash recovery to correct data written by incomplete transactions.默认的redo log 是在mysql 安装路径,文件名称像ib_logfile0 and ...

2019-04-29 10:08:11 510

原创 MYSQL(一) 事务(1)基础

什么是事务:事务就是由一组SQL组成,或者一个独立的工作单元。1.事务ACID原子性(atomicity):原子性是指事务包含的所有操作要么全部成功,要么全部失败回滚。因此事务操作如果成功就必须要完全应用到数据库,如果操作失败则不能对数据库有任何影响一致性(consistency):一致性是指事务必须使数据库从一个一致性状态转换到另一个一致性状态,也就是说一个事务执行之前和执行之后都必...

2019-04-27 09:14:23 218

原创 ORA-12537: TNS: 连接关闭

发现问题测试环境反应连接数过多,发现所有的链接都在rac第二个节点,测试环境没人叫也没有去管他手工测试指定实例:C:\Users\caoyf>sqlplus system/xxxx@192.168.xxx.xxx:1521/server_tafSQL*Plus: Release 11.2.0.4.0 Production on 星期四 4月 18 16:41:30 2019Co...

2019-04-18 17:39:58 2797

原创 cx_oracle链接'ascii' codec can't encode characters in position 136-139

问题:python 使用 cx_Oracle连接数据库oracle 'ascii' codec can't encode characters in position 136-139解决其实很简单首先想到的python 的字符集问题,在:在Python的Lib\site-packages文件夹下新建一个sitecustomize.py文件,内容为:#coding=utf8impor...

2019-04-17 15:12:58 614

原创 undo100% 重建undo

原因:undo表空间已分配60G,还是报100%;虽然没影响,还是通过设置为自动扩展.但是对于自动扩展的文件还有监控来判断是否还有可分配的空间。所以需要重建。步骤:1.创建默认表空间create UNDO  tablespace  UNDOTBS3 DATAFILE ‘/u02/oradata/xxxx/undotbs03.dbf’ size 5G autoexten...

2019-04-15 16:53:41 180

原创 ORACLE DG(1)基本配置

https://docs.oracle.com/cd/B28359_01/server.111/b28294/manage_ps.htm#i1007681一些官方文档上的内容DG提供的服务进程Redo Transport ServicesTransmit redo data from the primary system to the standby systems in the conf...

2019-04-14 13:34:12 199

原创 ORACLE 操作回滚引起的异常分析CPU高

发生:早上运维兼做DML操作跑过来说锁表了。需要杀进程同事杀掉了对应的进程,后收到CPU告警80%,查看拉了ash 查看,发现 wait for a undo record 等待严重,怀疑有大事物回滚原因开始查找原因,拉了对应进程的SQL,看到以下sql:表名隐掉了。delete aaa.a m where m.order_id in ( select order_id from ...

2019-03-29 16:09:01 525

原创 ORACLE(7)CHECKPOINT

主要来源:官方文档concept什么是检查点官方文档:A checkpoint is a crucial mechanism in consistent database shutdowns, instance recovery, and Oracle Database operation generally.The checkpoint has the following relate...

2019-03-26 09:10:30 202

boost-1-70

Boost库是一个可移植、提供源代码的C++库,作为标准库的后备,是C++标准化进程的开发引擎之一。 Boost库由C++标准委员会库工作组成员发起,其中有些内容有望成为下一代C++标准库内容。在C++社区中影响甚大,是不折不扣的“准”标准库。Boost由于其对跨平台的强调,对标准C++的强调,与编写平台无关。大部分boost库功能的使用只需包括相应头文件即可,少数(如正则表达式库,文件系统库等)需要链接库。但Boost中也有很多是实验性质的东西,在实际的开发中使用需要谨慎

2019-05-03

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除