<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[missAthin的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/missAthin</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; missAthin]]></copyright><item><title><![CDATA[编译版本太低（4.8）内核版本高引起的编译错误]]></title><link>https://blog.youkuaiyun.com/missAthin/article/details/132190094</link><guid>https://blog.youkuaiyun.com/missAthin/article/details/132190094</guid><author>missAthin</author><pubDate>Wed, 09 Aug 2023 15:50:27 +0800</pubDate><description><![CDATA[升级到内核版本所要求的编译器版本。升级的时候网上有教程。]]></description><category></category></item><item><title><![CDATA[make: *** /lib/modules/3.10.0-957.el7.x86_64/build: No such file or directory.]]></title><link>https://blog.youkuaiyun.com/missAthin/article/details/131724073</link><guid>https://blog.youkuaiyun.com/missAthin/article/details/131724073</guid><author>missAthin</author><pubDate>Fri, 14 Jul 2023 15:14:25 +0800</pubDate><description><![CDATA[重启之后，uname -r,显示，升级成功，并且和开发包的版本是一致的。按照某个博主的方式：yum update kernel，安装成功，/usr/src/kernels/有了，升级内核之后，需要重启！]]></description><category></category></item><item><title><![CDATA[qemu 上安装aarch64架构iso流程和问题]]></title><link>https://blog.youkuaiyun.com/missAthin/article/details/131700645</link><guid>https://blog.youkuaiyun.com/missAthin/article/details/131700645</guid><author>missAthin</author><pubDate>Thu, 13 Jul 2023 13:51:19 +0800</pubDate><description><![CDATA[宿主机：在zstack上，配置了gcc 7.4， bios使用的是QEMU_EFI.fd ，qumu命令：qemu-system-aarch64，使用说明参考help。1创建虚拟盘qcow ，qemu-img create -f qcow2 xxx-temp.qcow2 36G。遇到问题，iso安装的时候，莫名其妙卡住。后面修改了参数，增加了参数，qemu 加载镜像成功。3qemu发起从虚拟盘启动，启动的时候加载bios。2qemu模拟装载镜像到qcow盘。配置了桥接网卡，麒麟的iso，]]></description><category></category></item><item><title><![CDATA[kvm设置桥接网卡失败，ssh连接失败]]></title><link>https://blog.youkuaiyun.com/missAthin/article/details/131685717</link><guid>https://blog.youkuaiyun.com/missAthin/article/details/131685717</guid><author>missAthin</author><pubDate>Wed, 12 Jul 2023 16:54:30 +0800</pubDate><description><![CDATA[桥接之后，出的问题，ssh连接失败，ping不通外网。]]></description><category></category></item><item><title><![CDATA[qemu源码安装遇到的缺少的lib库]]></title><link>https://blog.youkuaiyun.com/missAthin/article/details/131680833</link><guid>https://blog.youkuaiyun.com/missAthin/article/details/131680833</guid><author>missAthin</author><pubDate>Wed, 12 Jul 2023 14:25:44 +0800</pubDate><description><![CDATA[出错：../meson.build:463:2: ERROR: Dependency "pixman-1" not found, tried pkgconfig。安装qemu报错“ERROR: glib-2.48 gthread-2.0 is required to compile QEMU”缺少：yum install glib2 glib2-devel。下载：https://download.qemu.org/]]></description><category></category></item><item><title><![CDATA[gcc 源码安装遇到问题以及解决]]></title><link>https://blog.youkuaiyun.com/missAthin/article/details/131680692</link><guid>https://blog.youkuaiyun.com/missAthin/article/details/131680692</guid><author>missAthin</author><pubDate>Wed, 12 Jul 2023 14:22:06 +0800</pubDate><description><![CDATA[遇到的问题：configure: error: C preprocessor “/lib/cpp” fails sanity check。安装之后，加载软连接，升级到安装版本。因为qemu可能使用的gcc版本是7.4以上的版本，系统自带的有点低了，更换版本。最后还缺少一个：glibc-kernheaders。安装版本：gcc 7.4。]]></description><category></category></item><item><title><![CDATA[greenplum数据库运维常见参数]]></title><link>https://blog.youkuaiyun.com/missAthin/article/details/130639320</link><guid>https://blog.youkuaiyun.com/missAthin/article/details/130639320</guid><author>missAthin</author><pubDate>Fri, 12 May 2023 11:50:55 +0800</pubDate><description><![CDATA[work_mem（全局参数）：建议设置为物理内存的2%-4%，用来限制segmen实例在运 行 sort,hash时候可用内存的大小，也就是用来限制postgresql在对大表分片排序合并的临时文件数，导致swap过大引起内存不足。effective_cache_size：可以缓存数据的内存大小，仅使用master。max_prepared_transactions：值和max_prepared_transactions一致，数据库启动后处于prepared状态事务最大数。]]></description><category></category></item><item><title><![CDATA[greenplum数据库概况]]></title><link>https://blog.youkuaiyun.com/missAthin/article/details/130626443</link><guid>https://blog.youkuaiyun.com/missAthin/article/details/130626443</guid><author>missAthin</author><pubDate>Thu, 11 May 2023 17:10:46 +0800</pubDate><description><![CDATA[数据库架构：3节点，master+standby master +segment(mirror segment为segment提供高可用支持)。greenplum数据库核心组件：interconnect（并行查询生成，分发，协调数据节点查询）2>内存带宽测试：测量无cpu计算情况下，内存带看低于cpu理论带宽，会导致cpu花费等待时间长。1>磁盘io测试：测试建议，文件尺寸按照主机山ram的2倍计算，以便绕过内存缓存。greenplum基本数据类型：数值，货币，字符，日期/时间，布尔类型。]]></description><category></category></item><item><title><![CDATA[gp集群参数优化]]></title><link>https://blog.youkuaiyun.com/missAthin/article/details/130410431</link><guid>https://blog.youkuaiyun.com/missAthin/article/details/130410431</guid><author>missAthin</author><pubDate>Thu, 27 Apr 2023 16:49:42 +0800</pubDate><description><![CDATA[gpstart的时候出错：gpstart error: Do not have enough valid segments to start the array.参数单位写错，正确的格式gpconfig -c wal_buffers -v 256MB。进入gpstart (gpstart -a -m)紧急模式，覆盖原有参数。修改参数：gpconfig -c wal_buffers -v 256M。]]></description><category></category></item><item><title><![CDATA[pgbench源码安装趟坑避坑]]></title><link>https://blog.youkuaiyun.com/missAthin/article/details/130402965</link><guid>https://blog.youkuaiyun.com/missAthin/article/details/130402965</guid><author>missAthin</author><pubDate>Thu, 27 Apr 2023 11:27:31 +0800</pubDate><description><![CDATA[cd ..(解压目录)/postgresql-9.2.24/contrib/pgbench/cd 到解压目录的根目录下(postgresql-9.2.24/)执行 ：./configure。cd 到解压目录的根目录下(postgresql-9.2.24/)执行 ：make。源码解压安装目录：非/root目录，考虑到普通用户的访问权限，最好不要放在这个目录下。重新执行：cd contrib/pgbench/7重新执行：cd contrib/pgbench/安装环境：centos7。9原因：没有必要的链接库。]]></description><category></category></item><item><title><![CDATA[安装数据库greenplum-db]]></title><link>https://blog.youkuaiyun.com/missAthin/article/details/130348458</link><guid>https://blog.youkuaiyun.com/missAthin/article/details/130348458</guid><author>missAthin</author><pubDate>Mon, 24 Apr 2023 17:50:19 +0800</pubDate><description><![CDATA[安装的时候，yum出了未知情况，不能使用，搜索了在各种网上的solution之后并没有解决问题，重启了一下可以正常使用，可能的原因是python库的问题，也可能是跟vm有关系，不知具体的是那种情况。最粗暴的方法：删除原有的用户，创建新的用户，重新设置。1:每个vm禁用selinux ，在/etc/selinux/config中 修改SELINUX=disable；1>修改 /etc/hosts 格式 IP 主机名，同时写vm1,vm2,vm3，并同步到3个vm。设置过程中，免密登录出的问题：设置不生效。]]></description><category></category></item><item><title><![CDATA[c和python混编]]></title><link>https://blog.youkuaiyun.com/missAthin/article/details/130348345</link><guid>https://blog.youkuaiyun.com/missAthin/article/details/130348345</guid><author>missAthin</author><pubDate>Mon, 24 Apr 2023 17:45:44 +0800</pubDate><description><![CDATA[2编译中如果是找不到Python.h文件，应该是缺少了 python-devel，需要做的是：yum install python-devel。3编译报错dynamic module does not define init function，可能是少了上面的参数，重新编译。调用关系：_pslinux.py调用作为模块的_psutil_linux，模块名在_psutil_linux.c中的结构体标明。.c文件又有：_psutil_linux.c，.py文件有：_pslinux.py，2目标文件成为.so。]]></description><category></category></item><item><title><![CDATA[leetcode：重排链表]]></title><link>https://blog.youkuaiyun.com/missAthin/article/details/124749182</link><guid>https://blog.youkuaiyun.com/missAthin/article/details/124749182</guid><author>missAthin</author><pubDate>Fri, 13 May 2022 12:38:29 +0800</pubDate><description><![CDATA[给定一个单链表 L 的头节点 head ，单链表 L 表示为：

L0 → L1 → … → Ln - 1 → Ln
请将其重新排列后变为：

L0 → Ln → L1 → Ln - 1 → L2 → Ln - 2 → …
不能只是单纯的改变节点内部的值，而是需要实际的进行节点交换。

解题思路：

1查找链表的中间，分为偶数和奇数两种

2找到中间端之后，断链

3对链表的后半段入栈操作

4合并两个链表

代码如下，有些乱：


/**
 * Definition for singly-linked l]]></description><category></category></item><item><title><![CDATA[leetcode，有效的括号（对不齐的思维）]]></title><link>https://blog.youkuaiyun.com/missAthin/article/details/124327817</link><guid>https://blog.youkuaiyun.com/missAthin/article/details/124327817</guid><author>missAthin</author><pubDate>Thu, 21 Apr 2022 17:52:15 +0800</pubDate><description><![CDATA[给定一个只包括 '('，')'，'{'，'}'，'['，']' 的字符串 s ，判断字符串是否有效。

有效字符串需满足：

左括号必须用相同类型的右括号闭合。
左括号必须以正确的顺序闭合。

数组实现：始终是不能向官方对齐啊，思维差别真的很大，由于白天板砖，晚上休息时间在（象征性）干互联网无关的副业啊。成年人的时间。。


char match(char s)
{
    if(s==')') return s='(';
    if(s==']') return s='[';
    if(s=='..]]></description><category></category></item><item><title><![CDATA[leetcode 有效的括号，stack实现。]]></title><link>https://blog.youkuaiyun.com/missAthin/article/details/124289991</link><guid>https://blog.youkuaiyun.com/missAthin/article/details/124289991</guid><author>missAthin</author><pubDate>Wed, 20 Apr 2022 09:52:53 +0800</pubDate><description><![CDATA[给定一个只包括 '('，')'，'{'，'}'，'['，']' 的字符串 s ，判断字符串是否有效。

有效字符串需满足：

左括号必须用相同类型的右括号闭合。
左括号必须以正确的顺序闭合。

实现的思路（传统方式）：

1压栈的是左括号（[,(,{）

2遇到右括号出站。

3stack为空，字符串为空的情况下返回true

不足：额外申请空间，代码长又长，还不如使用指针和数组做啊（凋零）


struct list 
{
    char  str;
    struct list *next;
};
]]></description><category></category></item><item><title><![CDATA[leetcode判断是否是回文链表]]></title><link>https://blog.youkuaiyun.com/missAthin/article/details/124177374</link><guid>https://blog.youkuaiyun.com/missAthin/article/details/124177374</guid><author>missAthin</author><pubDate>Thu, 14 Apr 2022 17:37:23 +0800</pubDate><description><![CDATA[给你一个单链表的头节点 head ，请你判断该链表是否为回文链表。如果是，返回 true ；否则，返回 false 。

解题思路：

1 0&lt;=inode&lt;listlen/2，压入stack中，后半段与压入栈中的数据做比较，所有相同则返回true

2奇偶情况不同


bool isPalindrome(struct ListNode* head){
    struct ListNode *stack;
    struct ListNode *np;
    struct ListNode]]></description><category></category></item><item><title><![CDATA[leetcode 合并两个链表，cai]]></title><link>https://blog.youkuaiyun.com/missAthin/article/details/124144879</link><guid>https://blog.youkuaiyun.com/missAthin/article/details/124144879</guid><author>missAthin</author><pubDate>Wed, 13 Apr 2022 11:58:44 +0800</pubDate><description><![CDATA[给你两个链表list1 和list2，它们包含的元素分别为n 个和m 个。

请你将list1中下标从 a 到 b 的全部节点都删除，并将list2接在被删除节点的位置。



struct ListNode* mergeInBetween(struct ListNode* list1, int a, int b, struct ListNode* list2)
{
    struct ListNode *head;
    struct ListNode *start;
    stru...]]></description><category></category></item><item><title><![CDATA[leetcode反转链表，写成了链表转化为stack，输出，算不算思路不对？]]></title><link>https://blog.youkuaiyun.com/missAthin/article/details/123903463</link><guid>https://blog.youkuaiyun.com/missAthin/article/details/123903463</guid><author>missAthin</author><pubDate>Fri, 01 Apr 2022 17:27:37 +0800</pubDate><description><![CDATA[给你单链表的头节点head，请你反转链表，并返回反转后的链表。


struct ListNode* reverseList(struct ListNode* head)
{
    struct ListNode *cur=NULL;
    struct ListNode *save;
    struct ListNode *stack;
    if(!head)
        return NULL;
    while(head)
    {
        save=head-&gt;n..]]></description><category></category></item><item><title><![CDATA[leetcode 旋转链表]]></title><link>https://blog.youkuaiyun.com/missAthin/article/details/123898326</link><guid>https://blog.youkuaiyun.com/missAthin/article/details/123898326</guid><author>missAthin</author><pubDate>Fri, 01 Apr 2022 15:03:22 +0800</pubDate><description><![CDATA[给你一个链表的头节点head，旋转链表，将链表每个节点向右移动k个位置。

解题思路：（传统的思维模式aaaa(笨办法)）根据旋转k值，拆分和拼接链表的结果：


struct ListNode* rotateRight(struct ListNode* head, int k){
    int listlen=0;
    int listep=0;
    struct ListNode *listail;
    struct ListNode *nodestep;
    nodestep...]]></description><category></category></item><item><title><![CDATA[leetcode 有序链表合并]]></title><link>https://blog.youkuaiyun.com/missAthin/article/details/123814389</link><guid>https://blog.youkuaiyun.com/missAthin/article/details/123814389</guid><author>missAthin</author><pubDate>Tue, 29 Mar 2022 10:23:11 +0800</pubDate><description><![CDATA[将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。

解题思路：传统做法：设置虚拟节点，一个pointer。遍历。（lk）



struct ListNode* mergeTwoLists(struct ListNode* list1, struct ListNode* list2){
    struct ListNode *listhead;
    struct ListNode *cur;
    if(!list1||!list2)
        ]]></description><category></category></item></channel></rss>