<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[u010947949的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/u010947949</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; u010947949]]></copyright><item><title><![CDATA[GDB使用]]></title><link>https://blog.youkuaiyun.com/u010947949/article/details/130871303</link><guid>https://blog.youkuaiyun.com/u010947949/article/details/130871303</guid><author>u010947949</author><pubDate>Thu, 25 May 2023 17:06:51 +0800</pubDate><description><![CDATA[5. x/nc 0x$address  #以字符的形式打印内存   #例如：(gdb) x/6c 0x7f267733df15  0x7f267733df15: 117 'u' 112 'p' 100 'd' 97 'a'  116 't' 101 'e'gdb -p 47671 或者  gdb attach  47671。6. x/ns 0x$address      #打印字符串。4. p $var         #打印变量的值。u表示一个地址单元的长度，与n一起表示显示的地址长度。]]></description><category></category></item><item><title><![CDATA[tcpdump使用]]></title><link>https://blog.youkuaiyun.com/u010947949/article/details/130871236</link><guid>https://blog.youkuaiyun.com/u010947949/article/details/130871236</guid><author>u010947949</author><pubDate>Thu, 25 May 2023 17:05:06 +0800</pubDate><description><![CDATA[假设threadid=268509076(0x10011F94),过滤的条件为：94:1f:01:10 frame[175:4] == 94:1f:01:10。-s 0 意思是着让tcpdump自动选择合适的长度来抓取数据包。Tcpdump类似mysql命令。# 打开多个wireshark windows命令。## 客户端和服务端在一起使用lo抓包。# 在客户端机器抓proxy包。- vv 输出详细报文信息。# 过滤thread_id。# tcpdump使用。# 抓出query的包。## 实时打印包信息。]]></description><category></category></item><item><title><![CDATA[Linux自带神器logrotate详解]]></title><link>https://blog.youkuaiyun.com/u010947949/article/details/127769448</link><guid>https://blog.youkuaiyun.com/u010947949/article/details/127769448</guid><author>u010947949</author><pubDate>Wed, 09 Nov 2022 14:35:11 +0800</pubDate><description><![CDATA[logrotate.conf 才主要的配置文件，logrotate.d 是一个目录，该目录里的所有文件都会被主动的读入/etc/logrotate.conf中执行。另外，如果 /etc/logrotate.d/ 里面的文件中没有设定一些细节，则会以/etc/logrotate.conf这个文件的设定来作为默认值。Logrotate是基于CRON来运行的，其脚本是/etc/cron.daily/logrotate，日志轮转是系统自动完成的。]]></description><category></category></item><item><title><![CDATA[docker 常用命令]]></title><link>https://blog.youkuaiyun.com/u010947949/article/details/127381905</link><guid>https://blog.youkuaiyun.com/u010947949/article/details/127381905</guid><author>u010947949</author><pubDate>Tue, 18 Oct 2022 09:40:26 +0800</pubDate><description><![CDATA[docker 常用命令]]></description><category></category></item><item><title><![CDATA[oom, crash等问题排查]]></title><link>https://blog.youkuaiyun.com/u010947949/article/details/124391023</link><guid>https://blog.youkuaiyun.com/u010947949/article/details/124391023</guid><author>u010947949</author><pubDate>Sun, 24 Apr 2022 20:27:14 +0800</pubDate><description><![CDATA[1. malloc或new的内存, 在释放的时候，指针向前移动或者向后移动（大多数）导致释放内存错误，也有kennel导致未知的crash

解决：

认真的review代码，尤其是free内存的地方



上图中，tables[i]向前移动了，在free的时候，会报指针不正确导致crash






...]]></description><category></category></item><item><title><![CDATA[mysql80源码安装]]></title><link>https://blog.youkuaiyun.com/u010947949/article/details/122117232</link><guid>https://blog.youkuaiyun.com/u010947949/article/details/122117232</guid><author>u010947949</author><pubDate>Thu, 23 Dec 2021 21:48:36 +0800</pubDate><description><![CDATA[## 下载源码
 略过
## cmake

cmake版本大于2.8，gcc版本大于7.1
创建build目录，在buid目录下执行下面命令
 cmake .. \
-DCMAKE_INSTALL_PREFIX=/home/zxchh/mysql80 \
-DWITH_BOOST=/home/zxchh/mysql80/mysql-8.0.27/boost/boost_1_73_0 \
-DWITH_EXTRA_CHARSETS:STRING=all \
-DWITH_MYISAM_STORAGE.....]]></description><category></category></item><item><title><![CDATA[mysql学习记录]]></title><link>https://blog.youkuaiyun.com/u010947949/article/details/84951081</link><guid>https://blog.youkuaiyun.com/u010947949/article/details/84951081</guid><author>u010947949</author><pubDate>Thu, 21 Oct 2021 22:09:42 +0800</pubDate><description><![CDATA[1、删除表的索引

    alter table tt drop index inx_name 等价于

    alter table tt drop key inx_name

2、表重新命名

  alter table t_xxx rename tt;

3]]></description><category></category></item><item><title><![CDATA[mac vscode 卸载，安装，配置，GDB]]></title><link>https://blog.youkuaiyun.com/u010947949/article/details/118701762</link><guid>https://blog.youkuaiyun.com/u010947949/article/details/118701762</guid><author>u010947949</author><pubDate>Tue, 13 Jul 2021 16:03:44 +0800</pubDate><description><![CDATA[第一步：退出 VSCode 应用

第二步：输入如下指令，删除 VSCode 的设置和配置


sudo rm -rf $HOME/Library/Application\ Support/Code

第三步：输入如下指令，删除 VSCode 的插件


sudo rm -rf $HOME/.vscode

第四步：从 Application 中移除 VSCode

安装

下载https://github.com/microsoft/vscode/releases/安装包

1. 关闭右侧的显示，sett]]></description><category></category></item><item><title><![CDATA[TCP的状态 (SYN, FIN, ACK, PSH, RST, URG)]]></title><link>https://blog.youkuaiyun.com/u010947949/article/details/117442998</link><guid>https://blog.youkuaiyun.com/u010947949/article/details/117442998</guid><author>u010947949</author><pubDate>Tue, 01 Jun 2021 14:45:35 +0800</pubDate><description><![CDATA[在TCP层，有个FLAGS字段，这个字段有以下几个标识：SYN, FIN, ACK, PSH, RST, URG.

其中，对于我们日常的分析有用的就是前面的五个字段。

它们的含义是：

SYN表示建立连接，

FIN表示关闭连接，

ACK表示响应，

PSH表示有 DATA数据传输，

RST表示连接重置。

其中，ACK是可能与SYN，FIN等同时使用的，比如SYN和ACK可能同时为1，它表示的就是建立连接之后的响应，

如果只是单个的一个SYN，它表示的只是建立连接。

TCP的几次握手就是...]]></description><category></category></item><item><title><![CDATA[c++知识学习]]></title><link>https://blog.youkuaiyun.com/u010947949/article/details/113918349</link><guid>https://blog.youkuaiyun.com/u010947949/article/details/113918349</guid><author>u010947949</author><pubDate>Sun, 21 Feb 2021 15:15:22 +0800</pubDate><description><![CDATA[c++知识

拷贝构造/移动构造

1.拷贝构造


#include &lt;vector&gt;
 
int main(){   
    std::vector&lt;Teacher&gt; v;
    Teacher t1;
    v.push_back(t1);
    return 0;
}

执行v.push_back(Teacher());这段代码时，会发生拷贝构造，也就是将t1对象完全copy一份到vector容器中

2、移动构造


#include &lt;vector&gt;
]]></description><category></category></item><item><title><![CDATA[innodb redo log分析]]></title><link>https://blog.youkuaiyun.com/u010947949/article/details/107483849</link><guid>https://blog.youkuaiyun.com/u010947949/article/details/107483849</guid><author>u010947949</author><pubDate>Tue, 21 Jul 2020 11:05:16 +0800</pubDate><description><![CDATA[Innodb redo log分析

目录

概述... 2

Redo log配置参数... 2

Redo log存储结构... 3

Redo log记录格式... 5

相关lsn说明... 6

redo log文件初始化... 6

redo log运行流程... 7

Mini transaction. 7

redo线程... 8

用户线程... 8

log_writer 8

log_flusher 8

log_closer 9

log_checkpointer 9

log_wr]]></description><category></category></item><item><title><![CDATA[Git使用]]></title><link>https://blog.youkuaiyun.com/u010947949/article/details/106570795</link><guid>https://blog.youkuaiyun.com/u010947949/article/details/106570795</guid><author>u010947949</author><pubDate>Fri, 05 Jun 2020 15:00:24 +0800</pubDate><description><![CDATA[Git命令使用

git log --stat 查看提交的文件名等详细信息

git status 查看当前分支的状态

git diff 查看所有文件的修改情况

git blame file 查看文件每一行代码的责任人

git stash 将修改的文件保存在暂存区

git stash show 显示暂存区的文件

git stash clear 清空暂存区

创建分支并推送到远程

新建一个本地分支
git checkout –b zhaoyh_dev

查看分支的状态
Git b...]]></description><category></category></item><item><title><![CDATA[mysql的sql_mode关于date的两个参数值NO_ZERO_DATE和NO_ZERO_IN_DATE]]></title><link>https://blog.youkuaiyun.com/u010947949/article/details/89532192</link><guid>https://blog.youkuaiyun.com/u010947949/article/details/89532192</guid><author>u010947949</author><pubDate>Fri, 26 Apr 2019 10:52:24 +0800</pubDate><description><![CDATA[STRICT_TRANS_TABLES：

在该模式下，如果一个值不能插入到一个事务表中，则中断当前的操作，对非事务表不做任何限制

NO_ZERO_IN_DATE：

在严格模式，不接受月或日部分为0的日期。如果使用IGNORE选项，我们为类似的日期插入'0000-00-00'。在非严格模式，可以接受该日期，但会生成警告。

NO_ZERO_DATE：

在严格模式，不要将 '0000-00...]]></description><category></category></item><item><title><![CDATA[mysql count(*) 和 count(1)和count(列名)区别]]></title><link>https://blog.youkuaiyun.com/u010947949/article/details/85336309</link><guid>https://blog.youkuaiyun.com/u010947949/article/details/85336309</guid><author>u010947949</author><pubDate>Sat, 29 Dec 2018 11:25:59 +0800</pubDate><description><![CDATA[
count(*) 和 count(1)和count(列名)区别  

执行效果上：  
count(*)包括了所有的列，相当于行数，在统计结果的时候，不会忽略列值为NULL  
count(1)包括了忽略所有列，用1代表代码行，在统计结果的时候，不会忽略列值为NULL  
count(列名)只包括列名那一列，在统计结果的时候，会忽略列值为空（这里的空不是只空字符串或者0，而是表示null）的计数...]]></description><category></category></item><item><title><![CDATA[go语言学习]]></title><link>https://blog.youkuaiyun.com/u010947949/article/details/83866032</link><guid>https://blog.youkuaiyun.com/u010947949/article/details/83866032</guid><author>u010947949</author><pubDate>Thu, 08 Nov 2018 18:46:20 +0800</pubDate><description><![CDATA[strings包中的函数


Index(s, substr string) int；返回子串在源串中的第一次出现的位置，如果不存在返回-1



func ToUpper(s string) string ；返回字符串的大写



func ToLower(s string) string ；返回字符串的小写



// ToTitle returns a copy of the string ...]]></description><category></category></item><item><title><![CDATA[mysql_test测试框架小结]]></title><link>https://blog.youkuaiyun.com/u010947949/article/details/83387205</link><guid>https://blog.youkuaiyun.com/u010947949/article/details/83387205</guid><author>u010947949</author><pubDate>Thu, 25 Oct 2018 21:52:00 +0800</pubDate><description><![CDATA[1、连接远程的数据库执行 mysql_test用例命令：

./mysql-test-run.pl --extern host=10.8.30.1 --extern port=7788 --extern user=root --extern password='uddbtest7788'  show --recordLogging: ./mtr  --extern host=10.8.30.1 -...]]></description><category></category></item><item><title><![CDATA[mysql5.7.22源码安装]]></title><link>https://blog.youkuaiyun.com/u010947949/article/details/82377862</link><guid>https://blog.youkuaiyun.com/u010947949/article/details/82377862</guid><author>u010947949</author><pubDate>Tue, 04 Sep 2018 09:32:08 +0800</pubDate><description><![CDATA[1、准备工作

         1）mysql官网下载源码包

          2）解压到安装用户目录

          3)下载boost

2、安装步骤

安装mysql其实就3板斧，cmake、make、make install

1）在mysql源码的BUILD目录下执行

  cmake .. \
-DCMAKE_INSTALL_PREFIX=/home/install_use...]]></description><category></category></item></channel></rss>