当前位置: 首页 > news >正文

数据库内核研发学习之路(一)

已经上了几天班了,开始做一些总结性的工作。

数据库内核研发首当其中的便是环境配置,今天先介绍一下虚拟机之类的环境搭建,在之前已经写过一篇关于VMware搭建虚拟机的博客了,有兴趣可以去看看,这里我再总结一下使用VirtualBox搭建CentOS7.9,并且配置网络的过程,简单易上手,搞起!

一、虚拟机安装和网络配置

1、Virtual Box软件

这个安装包自己找找哈,我就懒得给了,如果实在想要,留言我!

然后就是开始安装嘛,这里提一嘴,有点小坑,直接安装Virtual Box可能会报错,第一个大家安装软件肯定都不想往c盘安装,但是这里如果你选择的是7.14-7.16版本的,那就会面临你选择安装地址不在c盘的时候不允许你安装,具体什么原因就是官方的限制哈,如果还是想装在其他盘的就降低版本安装7.14以下的版本,如果你非要就这个版本欸,那也有解决的办法,官方文档也有说明,或者你直接看这个博客:

解决安装VirtualBox高版本不能自定义安装D盘问题 Invalid installation directory_让世界更美好的技术博客_51CTO博客

第二个就是,在安装的时候可能会报错这样的问题:

这个你要么就按提示去安装一下vs2019,不想安装也有办法,那就是去下载一个redistributable包,这个包在官方也有下载的,速度还可以,这里给链接,记得点赞!

https://download.visualstudio.microsoft.com/download/pr/8b92f460-7e03-4c75-a139-e264a770758d/26C2C72FBA6438F5E29AF8EBC4826A1E424581B3C446F8C735361F1DB7BEFF72/VC_redist.x64.exe

 然后基本上就没有大问题了,至少我就遇到这两个问题,然后就是安装,一直下一步就行。

2、安装虚拟机CentOS7

这个也是先去把iso包下载下来,太大了就不放链接了,想要的话发在评论,然后安装的流程基本上没什么问题,都比较顺畅,详情看这个博主大大的博客就行了,我就不重复造轮子了。

VirtualBox安装CentOS 7教程(超详细)_virtualbox安装centos7-CSDN博客

需要注意的一点就是,在最后安装gnome桌面的时候,这边建议是不选择安装的,因为现场一般来说是不会在桌面上进行开发的,所以多半就只是消耗资源而已,当然,你要是想安装也是可以的,然后资源的话大概内存给个4-8GB就差不多,磁盘尽量给多一点,省的到时候扩容挂载磁盘麻烦。 

3、配置网络

然后就是比较重要的配置网络的步骤了,网上一大堆博客我当时配置的时候基本上是没整对,我自己的配置方法仅作为大家参考。

首先就是先设置virtual Box的网络配置。

然后就是设置hsot-only网络,图中的192.168.56.100就是网关,然后网卡的ip地址是可以取192.168.56.101到192.168.56.254之间,因为这里是dbcp动态取的,所以我们就不需要设置了,一般来说就是直接取最低的101这个了。

除了这张网卡之外,我这里建议再新建一张网卡,两张网卡,一张链接外网,一张和本地物理机链接,这样比较好设置。

 

点击这个创建就可以直接新建一张nat网卡,设置只需要改一下端口转发即可 。

然后设置完virtual Box之后配置虚拟机的网络,首先将网卡一设置为host-only网络,然后就是将网卡二打开,并设置为NAT网络,注意不是网络地址转换NAT网络。

 然后其他的基本上和前面写的博客那里一样,然后第一次进来大致的界面就是这样子,我们使用ip a命令查看,发现我们两张网卡都没有生效。(每个人的情况可能不一样哈,这里看enp0s3和enp0s8都没有ip挂载在上面)

然后使用nmcli命令将两张网卡激活,再查看ip如下:

这时再ping外网就发现已经成功了:

 接下来就是检测window端能否连接上服务器端了:

可以发现结果是ok的,可以ping通。

到此网络配置就结束了,如果有什么疑问欢迎评论区或者私聊。

4、使用ssh工具连接虚拟机

弄完了我们会发现虚拟机的那个黑框框既不好看并且每次还得切换鼠标出来,太麻烦了,所以我们接下来要介绍的就是使用win端的ssh工具连接虚拟机并登录。

ssh工具的话使用常见的就ok,例如xshell,mobaxterm等,这些都是个人免费,但是商业收费的产品,所以一般来说在公司很少用到这种,这里推荐大家直接使用win的自带的工具,即Windows terminal工具,具体如何安装下载是真的很简单,我这里就不做赘述。

Windows终端(windows terminal)从下载到运行-CSDN博客

 然后你也可以配置一下环境变量,之后就可以直接使用win+r输入wt即可打开该工具。

前面的准备好了,接下来再连接之前我们先对虚拟机设置一下,首先便是关闭防火墙以及禁用防火墙开机自启,命令如下:

systemctl stop firewalld //关闭防火墙
systemctl disable firewalld //关闭防火墙开机自启

其次便是设置一下虚拟机允许root远程登陆,修改的文件位置如下:

vi /etc/ssh/sshd_config//找到PermitRootLogin这一项,将其前面的#注释去掉。然后重启sshd服务systemctl restart sshd

然后我们再启动Windows Terminal,使用ssh命令连接虚拟机如下:

 5、虚拟机换源

 有经验的同学肯定知道我们安装好虚拟机之后下载东西会比较慢,甚至有的时候还经常下载失败,这其实是因为虚拟机默认的下载源是国外的镜像,所以我们为了加快下载速度就需要我们换源,这一步骤也很简单。同样的这一类型的文章也有很多了,我就不重复造轮子了,大家可以参考这个博主的文章:

CentOS7将yum源更换为国内源保姆级教程【建议收藏】_centos7 国内源-CSDN博客

相关文章:

数据库内核研发学习之路(一)

已经上了几天班了,开始做一些总结性的工作。 数据库内核研发首当其中的便是环境配置,今天先介绍一下虚拟机之类的环境搭建,在之前已经写过一篇关于VMware搭建虚拟机的博客了,有兴趣可以去看看,这里我再总结一下使用Vi…...

LSTM:深度学习中的时间序列处理大师

LSTM:深度学习中的时间序列处理大师 引言 在深度学习领域,处理时间序列数据是一项极具挑战性的任务。时间序列数据广泛存在于金融、医疗、气象、自然语言处理等多个领域,这些数据不仅具有时间依赖性,还常常伴随着复杂的长期依赖…...

T113-i系统启动速度优化方案

背景: 硬件:T113-i + emmc 软件:uboot2018 + linux5.4 + QT应用 分支:longan 问题: 全志T113-i的官方系统软件编译出的固件,开机启动时间10多秒,启动时间太长,远远超过行业内linux系统的开机速度,需要进一步优化。 T113-i 优化后启动速度实测数据 启动阶段启动时间(…...

ArcGis将同一图层的多个面要素合并为一个面要素

这里写自定义目录标题 1.加载面要素的shp数据 2.点击菜单栏的地理处理–融合,如下所示: 3.将shp面要素输入,并设置输出,点击确定即可合并。合并后的属性表就只有一个数据了。...

微软Win11 24H2七月更新补丁KB5040435发布!附下载

系统之家于7月10日发出最新报道,微软为Win11用户发布了24H2版本七月的最新更新补丁KB5040435。用户升级系统后,会发现版本号升至 26100.1150。此次更新针对远程身份验证拨入用户服务(RADIUS)协议与 MD5冲突等问题进行修复。接下来跟随小编看看此次更新的…...

iOS 开发中不常见的专业术语

乐此不疲地把简单的问题复杂化,并把这种XX行为叫作专业 APM 在 iOS 开发中,APM 代表 Application Performance Management(应用性能管理)。APM 是一套监控和管理应用程序性能的工具和技术,旨在确保应用程序运行平稳、…...

【中项第三版】系统集成项目管理工程师 | 第 4 章 信息系统架构④ | 4.7

前言 第4章对应的内容选择题和案例分析都会进行考查,这一章节属于技术相关的内容,学习要以教材为准。本章分值预计在4-5分。 目录 4.7 安全架构 4.7.1 安全威胁 4.7.2 定义与范围 4.7.3 整体架构设计 4.7.4 网络安全架构设计 4.7.5 数据库系统安…...

Time to say GoodBye

北湖的繁华 北湖的繁华 北湖的繁华 终究 终究 终究 还是不属于我了 还是不属于我了 还是不属于我了 永远铭记 6 月 26 日 永远铭记6月26日 永远铭记6月26日 在这天下午 , 一个眼镜男夺走了我的资格 在这天下午,一个眼镜男夺走了我的资格 在这天下午,一个眼镜男夺走了我的资格 永…...

C语言之指针的奥秘(二)

一、数组名的理解 int arr[10]{1,2,3,4,5,6,7,8,9,10}; int *p&arr[0]; 这里使用 &arr[0] 的⽅式拿到了数组第⼀个元素的地址,但是其实数组名本来就是地址,而且是数组首元素的地址。如下: 我们发现数组名和数组⾸元素的地址打印出…...

嵌入式linux系统内核启动过程分享

内核的生成步骤可以概括如下: ① 先生成 vmlinux,这是一个elf可执行文件。② 然后 objcopy 成 arch/i386/boot/compressed/vmlinux.bin,去掉了原 elf 文件中一些无用的section等信息。③ gzip 后压缩为 arch/i386/boot/compressed/vmlinux.bin.gz。④ 把压缩文件作为数据段…...

RK3568笔记三十五:LED驱动开发测试

若该文为原创文章,转载请注明原文出处。 字符设备驱动程序的基本框架,主要是如何申请及释放设备号、添加以及注销设备,初始化、添加与删除 cdev 结构体,并通过 cdev_init 函数建立 cdev 和 file_operations 之间的关联&#xff0c…...

pnpm 如何安装指定版本

要安装特定版本的pnpm,可以使用npm命令来全局安装特定版本的pnpm,例如: npm install -g pnpm2.0.0在上面的命令中,使用了2.0.0来指定安装2.0.0版本的pnpm。您可以将2.0.0替换为您需要安装的版本号。 如果您使用的是yarn&#xf…...

LeetCode 240 搜索二维矩阵||

1.题目要求: 编写一个高效的算法来搜索 m x n 矩阵 matrix 中的一个目标值 target 。该矩阵具有以下特性:每行的元素从左到右升序排列。 每列的元素从上到下升序排列。实列: 2.各位大佬们,大家好,此题我用的方法是一行一行的找&…...

万界星空科技MES系统:食品加工安全的实时监控与智能管理

万界星空科技MES系统通过集成多种技术和功能,能够实时监控食品加工过程中各环节的安全风险。以下是对该系统如何实现实时监控的详细分析: 一、集成传感器和数据分析技术 万界星空科技MES系统利用集成的传感器和数据分析技术,实时监控生产过程…...

【学习笔记】4、组合逻辑电路(下)

接前文《【学习笔记】4、组合逻辑电路(上)》 4.4.5 算术运算电路 1. 半加器和全加器 半加器和全加器是算术运算电路中的基本单元。半加器和全加器是1位相加的组合逻辑电路。 (1)半加器 半加器:只考虑两个加数本身,不考虑低位进…...

使机器人在执行任务倒快递

这段代码是用来控制机器人在不同模式下的行为,具体是处理 residenceright 和 residenceleft 两种模式下的过渡过程。代码中使用了一个 mythread 结构体,该结构体包含了机器人的当前模式 (mode) 和过渡过程的阶段 (residenceTransientProcess)。以下是对这…...

谈谈软件交互设计

谈谈软件交互设计 交互设计的由来 交互设计(Interaction Design)这一概念,最初是由IDEO创始人之一Bill.Moggridge(莫格里奇)1984年在一次会议上提出。他设计了世界上第一台笔记本电脑Compass,并写作出版了在交互设计领域影响深远的《Designing Interactions》一书,被称…...

npm install报错:淘宝镜像证书过期

npm install报错:淘宝镜像证书过期 近期使用npm淘宝镜像新建项目或依赖时出现报错: npm ERR! request to https://registry.npm.taobao.org/xxx failed, reason: certificate has expired 错误原因: 早在 2021 年,淘宝就发文称…...

各种Attention|即插即用|适用于YoloV5、V7、V8、V9、V10(一)

摘要 本文总结了各种注意力,即插即用,方便大家将注意力加到自己的论文中。 SE import torch from torch import nn class SEAttention(nn.Module): """ SENet(Squeeze-and-Excitation Networks)中的注意力…...

语言模型演进:从NLP到LLM的跨越之旅

在人工智能的浩瀚宇宙中,自然语言处理(NLP)一直是一个充满挑战和机遇的领域。随着技术的发展,我们见证了从传统规则到统计机器学习,再到深度学习和预训练模型的演进。如今,我们站在了大型语言模型&#xff…...

测试微信模版消息推送

进入“开发接口管理”--“公众平台测试账号”,无需申请公众账号、可在测试账号中体验并测试微信公众平台所有高级接口。 获取access_token: 自定义模版消息: 关注测试号:扫二维码关注测试号。 发送模版消息: import requests da…...

装饰模式(Decorator Pattern)重构java邮件发奖系统实战

前言 现在我们有个如下的需求,设计一个邮件发奖的小系统, 需求 1.数据验证 → 2. 敏感信息加密 → 3. 日志记录 → 4. 实际发送邮件 装饰器模式(Decorator Pattern)允许向一个现有的对象添加新的功能,同时又不改变其…...

设计模式和设计原则回顾

设计模式和设计原则回顾 23种设计模式是设计原则的完美体现,设计原则设计原则是设计模式的理论基石, 设计模式 在经典的设计模式分类中(如《设计模式:可复用面向对象软件的基础》一书中),总共有23种设计模式,分为三大类: 一、创建型模式(5种) 1. 单例模式(Sing…...

《用户共鸣指数(E)驱动品牌大模型种草:如何抢占大模型搜索结果情感高地》

在注意力分散、内容高度同质化的时代,情感连接已成为品牌破圈的关键通道。我们在服务大量品牌客户的过程中发现,消费者对内容的“有感”程度,正日益成为影响品牌传播效率与转化率的核心变量。在生成式AI驱动的内容生成与推荐环境中&#xff0…...

基于当前项目通过npm包形式暴露公共组件

1.package.sjon文件配置 其中xh-flowable就是暴露出去的npm包名 2.创建tpyes文件夹,并新增内容 3.创建package文件夹...

WEB3全栈开发——面试专业技能点P2智能合约开发(Solidity)

一、Solidity合约开发 下面是 Solidity 合约开发 的概念、代码示例及讲解,适合用作学习或写简历项目背景说明。 🧠 一、概念简介:Solidity 合约开发 Solidity 是一种专门为 以太坊(Ethereum)平台编写智能合约的高级编…...

Map相关知识

数据结构 二叉树 二叉树,顾名思义,每个节点最多有两个“叉”,也就是两个子节点,分别是左子 节点和右子节点。不过,二叉树并不要求每个节点都有两个子节点,有的节点只 有左子节点,有的节点只有…...

Rapidio门铃消息FIFO溢出机制

关于RapidIO门铃消息FIFO的溢出机制及其与中断抖动的关系,以下是深入解析: 门铃FIFO溢出的本质 在RapidIO系统中,门铃消息FIFO是硬件控制器内部的缓冲区,用于临时存储接收到的门铃消息(Doorbell Message)。…...

Mobile ALOHA全身模仿学习

一、题目 Mobile ALOHA:通过低成本全身远程操作学习双手移动操作 传统模仿学习(Imitation Learning)缺点:聚焦与桌面操作,缺乏通用任务所需的移动性和灵活性 本论文优点:(1)在ALOHA…...

初探Service服务发现机制

1.Service简介 Service是将运行在一组Pod上的应用程序发布为网络服务的抽象方法。 主要功能:服务发现和负载均衡。 Service类型的包括ClusterIP类型、NodePort类型、LoadBalancer类型、ExternalName类型 2.Endpoints简介 Endpoints是一种Kubernetes资源&#xf…...