OpenTenBase 开发环境搭建及Debug设置

最近有个 OpenTenBase开源核心贡献挑战赛 领导建议大家都去试试,我也去凑了下热闹,发现能力有限一时半会是搞不明白了,最多也就是能搞搞文档翻译,或者写点操作手册啥的。
不过不管怎么样,先把开发环境搭上,得空也能玩一下。

啥是OpenTenBase

想了解的可以直接上官方源码地址去看看。
一句话就是,腾讯基于Postgres-XL(基于PostgreSQL)开发的分布式数据库系统。

开整

没有独立的Linux机器可用,经常要玩玩游戏,也不可能把小本本换成Linux,所以计划使用虚拟机开发。

  • 宿主系统 :WIN11 家庭版
  • 虚拟机:VirtualBox 7.0
  • 虚拟操作系统:CentOS-7-x86_64-Minimal-2009
    • 内存大于4G
  • IDE: Eclipse IDE for C/C++ Developers 2023-12
  • 终端工具:MobaXterm v23.2

CentOS上安装基础包

yum groupinstall "X Window System"
yum -y install gcc make readline-devel zlib-devel openssl-devel uuid-devel bison flex
yum -y install gdb git java-1.8.0-openjdk.x86_64

关于X环境,执行xclock能弹出一个小闹钟就可以了。
在这里插入图片描述

新建开发账号

这里我用的是opentenbase

#开发账号
useradd opentenbase#开发目录
mkdir -p /data/opentenbasechown -R opentenbase.opentenbase /data/opentenbase

下载源码

建议把官方代码以fork到自己的仓库里然后下载自己仓库的代码,这样以后修改了可以直接向自己的库里提交。

cd /data/opentenbase
git clone https://github.com/OpenTenBase/OpenTenBase.git

下载Eclipse

wget https://mirrors.nju.edu.cn/eclipse//technology/epp/downloads/release/2023-12/R/eclipse-cpp-2023-12-R-linux-gtk-x86_64.tar.gztar xzvf eclipse-cpp-2023-12-R-linux-gtk-x86_64.tar.gz

导入工程

# 配置环境变量,可以把环境变量添加取.bash_profile中
export SOURCECODE_PATH=/data/opentenbase/OpenTenBase
export INSTALL_PATH=/data/opentenbase/install# 生成Makefile
cd $SOURCECODE_PATH
./configure --prefix=${INSTALL_PATH}/opentenbase_bin_v2.0 --enable-user-switch --with-openssl --with-ossp-uuid CFLAGS=-g --enable-depend --enable-cassert --enable-debug#编译生成
make clean
make -sj
make install
chmod +x contrib/pgxc_ctl/make_signature
cd contrib
make -sj
make install# 运行eclipse
cd /data/opentenbase/eclipse
./eclipse

设置workspace
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

调试

调试前要先用之前生成的程序部署一套数据库环境,只在本机部署即可,不同节点用端口区分即可。部署文档请参考官方github,以后有时间出一个详细文档。

确认调试进程号

登录数据库通过pg_stat_activity表查pid,或通过 select pg_backend_pid(); 查询
在这里插入图片描述
在这里插入图片描述

绑定调试进程

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

设置断点

在这里插入图片描述

执行查询命令,然后查看断点

在这里插入图片描述

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/522222.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Zabbix(四)

Zabbix Proxy zabbix作为一个分布式监控系统(分布式监控解决方案),支持通过代理(proxy)收集zabbix agent的监控数据,然后由zabbix proxy再把数据发送给zabbix server,也就是zabbix proxy 可以代替zabbix server收集监控数据,然后…

Chrome安装Axure插件

打开原型目录/resources/chrome,重命名axure-chrome-extension.crx,修改后缀为rar,axure-chrome-extension.rar 解压到axure-chrome-extension目录打开Chrome,更多工具->扩展程序,打开开发者模式,选择加…

用BIO实现tomcat

一、前言 本课程的难度较高,需要将Servlet原理和IO课程全部学完。 二、当前项目使用方式 (1).自定义servlet 自定义servlet需要实现WebServlet并且实现name和urlMapping 重启进行访问 http://localhost:8090/myServlet (2).自定义html 重启进行访问 http://loc…

洗地机热门品牌测评:石头/希亦/顺造/云鲸洗地机哪个好?哪个牌子最值得入手

大家好,博主是一个热爱生活和科技的居家测评博主。在过去的三年多时间里,我专注于清洁家电——洗地机。我深入测评了三十多款洗地机,现在我将用简单易懂的语言来分享洗地机的选购技巧和热门洗地机机型推荐。 洗地机选购技巧: 看…

在迁移测试中,源表、中间表、目标表的迁移规则

以银行的核心系统从旧核心系统更换为新核心系统为基础,对导入到迁移环境的生产数据(已脱敏)进行数据的验证。 数据迁移环境 迁移环境需要A、B两套环境。其中,A环境为新系统环境、B环境为老系统环境。 数据迁移小组 迁移小组&a…

图片速览 BitNet: 1-bit LLM

输入数据 模型使用absmax 量化方法进行b比特量化,将输入量化到 [ − Q b , Q b ] ( Q b 2 b − 1 ) \left[-Q_{b},Q_{b}\right](Q_{b}2^{b-1}) [−Qb​,Qb​](Qb​2b−1) x ~ Q u a n t ( x ) C l i p ( x Q b γ , − Q b ϵ , Q b − ϵ ) , Clip ⁡ ( x , a , b ) ma…

浅谈字典攻击

一、前言 字典攻击是一种常见的密码破解方法,它使用预先编制的字典文件作为攻击字典,通过尝试猜测密码的方式来破解密码。下面是一个关于字典攻击的博客,希望能够为您了解字典攻击提供帮助。 二、字典攻击概述 字典攻击是一种密码破解方法&…

Unity笔记:C#基础(1)

杂项 虚函数 CSDN - C虚函数详解 cnblog - C#中的虚函数virtual 常量池与new 在C#中,string是不可变的,这意味着对string对象的操作通常会返回一个新的string对象,而不会修改原始的string对象。因此,几乎所有涉及更改string内…

(未解决)macOS matplotlib 中文是方框

reference: Mac OS系统下实现python matplotlib包绘图显示中文(亲测有效)_mac plt 中文值-CSDN博客 module ‘matplotlib.font_manager‘ has no attribute ‘_rebuild‘解决方法_font_manager未解析-CSDN博客 # 问题描述(笑死 显而易见 # solve 找到…

开源文生图大模型Playground v2.5发布:超越SD、DALL·E 3和 Midjourney

前言 在AI技术迅速发展的今天,文生图模型成为了艺术创作、设计创新等领域的重要工具。Playground v2.5的发布,不仅在技术上取得了突破,更在开源文化的推广与实践上迈出了重要一步。 Huggingface模型下载:https://huggingface.co/…

虚拟机环境搭建

搭建vm环境,配置虚拟机,期间遇到不支持,重启电脑后还是没用 此主机支持 AMD-V,但 AMD-V 处于禁用状态。 如果已在 BIOS/固件设置中禁用 AMD-V,或主机自更改此设置后从未重新启动,则 AMD-V 可能被禁用。 确…

PDF文件中有多个文件如何一次性的全部分割出来? 这个办法绝对能够帮到你

PDF作为一种常用的文件格式,广泛应用于各种文档、报表、合同等文件的制作和传输。但有时候,我们可能会遇到一个问题:PDF文件中包含了多个文件,我们需要单独提取其中的一个或几个文件。那么,该如何操作呢?下…