金仓数据库-KingbaseES-学习-01-单机部署(非图形化安装)

目录

一、环境信息

二、介绍

三、下载地址

四、安装步骤

1、配置内核参数

(1)文件系统相关

(2)共享内存与信号量(IPC)

(3)网络与端口配置

(4)关键场景

(5)注意事项

(6)编辑/etc/sysctl.conf

(7)持久化配置

(8)查看配置

2、用户创建

3、密码设置

4、资源限制配置

(1)资源参数

(2)资源限制类型

(3)编辑/etc/security/limits.conf

(4)验证生效

5、目录创建

6、权限赋予

7、镜像挂载

8、拷贝文件

9、镜像卸载

10、权限赋予

11、操作系统语言修改

12、程序安装

13、系统服务注册

14、登录数据库

15、停止数据库

16、启动数据库


一、环境信息

名称
CPUIntel(R) Core(TM) i5-1035G1 CPU @ 1.00GHz
操作系统CentOS Linux release 7.9.2009 (Core)
内存6G
逻辑核数6
KingbaseES版本V009R001C002B0014

二、介绍

金仓数据库管理系统[简称:KingbaseES] 是中电科金仓(北京)科技股份有限公司自主研发的、 具有自主知识产权的商用关系型数据库管理系统(DBMS)。该产品面向事务处理类应用,兼顾各类数据分析类应 用,可用做信息管理系统、业务及生产系统、决策支持系统、全文检索、地理信息系统等的承载数据库。

KingbaseES 支持多种操作系统和硬件平台: 支持 Linux、Windows、国产 Kylin 等数十个操作系统产品版本,支 持通用x86_64 及国产龙芯、飞腾、申威等CPU硬件体系架构。

针对不同类型的客户需求,KingbaseES 提供标准版、企业版、专业版、开发版等多种版本。这些版本构建于同 一数据库引擎上,不同平台版本完全兼容。

KingbaseES 软件能够提供一主一备以及一主多备的高可用集群架构,实现数据及实例级(异地)故障容灾,也能 够提供多节点并行服务,内存融合及存储共享,实现高并发性能利用最大化,结合读写分离或备份使用同步实现数据 保护最大化。

三、下载地址

https://download.kingbase.com.cn/xzzx/index.htm

四、安装步骤

1、配置内核参数

(1)文件系统相关

参数说明
fs.aio-max-nr1048576系统允许的异步 I/O 操作最大数量。用于支持高并发异步 IO 的场景(如数据库)。注意:本参数限制并发发出的请求数量。应该设置以避免IO子系统的失败。
fs.file-max6815744系统全局最大文件句柄数。限制所有进程可同时打开的文件总数,防止资源耗尽。

(2)共享内存与信号量(IPC)

参数说明
kernel.shmall2097152系统可分配的共享内存总页数(单位:内存页,默认页大小 4KB)。总共享内存 = shmall * 页大小
kernel.shmmax4294967295单个共享内存段的最大大小(单位:字节)。
最小: 536870912。
最大:物理内存值减去1 字节。
建议:大于物理内存的一 半。
kernel.shmmni4096系统允许的共享内存段最大数量
kernel.sem250 32000 100 128信号量参数(格式:SEMMSL SEMMNS SEMOPM SEMMNI)。
SEMMSL: 每个信号量集的最大信号量数量
SEMMNS: 系统总信号量数量
SEMOPM: 单次操作最大信号量数
SEMMNI: 系统信号量集总数

(3)网络与端口配置

参数说明
net.ipv4.ip_local_port_range9000 65500TCP/UDP 本地端口范围。
- 扩大范围可支持更多并发连接(如 Web 服务器)。
net.core.rmem_default262144默认接收缓冲区大小(单位:字节)。
net.core.rmem_max4194304接收缓冲区最大大小(单位:字节)。
net.core.wmem_default262144默认发送缓冲区大小(单位:字节)。
net.core.wmem_max1048576发送缓冲区最大大小(单位:字节)。

(4)关键场景

  1. 数据库优化

    • kernel.shmmaxkernel.shmall 调整共享内存以适应数据库缓存需求。

    • fs.aio-max-nr 提升异步 IO 性能。

  2. 高并发网络服务

    • net.ipv4.ip_local_port_range 扩大可用端口范围。

    • net.core.rmem_max/wmem_max 优化网络吞吐量。

  3. 防止资源耗尽

    • fs.file-max 避免因文件句柄不足导致服务崩溃。


(5)注意事项

  1. 单位问题

    • kernel.shmmaxkernel.shmall 的值与系统内存大小相关,需根据实际物理内存调整。

    • 例如 kernel.shmmax=4294967295 表示约 4GB(适用于小内存系统)。

  2. 信号量参数

    • 若应用提示信号量不足,需增大 kernel.sem 的值。

  3. 端口范围有效性

    • net.ipv4.ip_local_port_range 的合法范围是 1024-65535,且第一个值需小于第二个值。

(6)编辑/etc/sysctl.conf

[root@czg2 Pkg]# cat /etc/sysctl.conf
fs.aio-max-nr=1048576
fs.file-max=6815744
kernel.shmall=2097152
kernel.shmmax=4294967295
kernel.shmmni=4096
kernel.sem=250 32000 100 128
net.ipv4.ip_local_port_range=9000 65500
net.core.rmem_default=262144
net.core.rmem_max=4194304
net.core.wmem_default=262144
net.core.wmem_max=1048576

(7)持久化配置

建议是先重启服务器,再执行如下命令:

[root@czg2 Pkg]# sysctl -p
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 4294967295
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576

(8)查看配置

[root@czg2 Pkg]# sysctl -a

2、用户创建

[root@czg2 Pkg]# useradd -m kingbase

3、密码设置

[root@czg2 Pkg]# passwd kingbase

4、资源限制配置

(1)资源参数

参数描述
nofile用户或进程可以打开的文件描述符的最大数量。
nproc用户或进程可以创建的最大进程数。
data进程数据段的最大大小(单位:KB)。
stack进程堆栈段的最大大小(单位:KB)。
core核心转储文件的最大大小(单位:KB)。
rss进程常驻内存集的最大大小(单位:KB)。
as进程地址空间的最大大小(单位:KB)。
maxlogins用户允许的最大登录会话数。
maxsyslogins系统允许的最大登录用户总数。
priority用户进程的优先级(nice 值)。
locks用户可以持有的文件锁的最大数量。
sigpending用户可以挂起的信号的最大数量。
msgqueue用户可以使用的 POSIX 消息队列的最大大小(单位:字节)。
nice用户进程的最大 nice 值(范围:-20 到 19)。
rtprio用户进程的最大实时优先级(范围:0 到 99)。
memlock用户可以锁定的内存的最大大小(单位:KB)。

(2)资源限制类型

硬限制(hard limit)

  • 由 root 用户设置,是用户或用户组能够使用的资源上限。

  • 普通用户不能修改硬限制。

软限制(soft limit)

  • 用户可以自行修改,但不能超过硬限制。

  • 通常用于警告或临时限制。

(3)编辑/etc/security/limits.conf

kingbase soft nofile 65536
#注意:设置nofile的hard limit不能大于/proc/sys/fs/nr_open,否则注销后将无法正常登陆。
kingbase hard nofile 65536
kingbase soft nproc  65536
kingbase hard nproc  65536
kingbase soft core   unlimited
kingbase hard core   unlimited

(4)验证生效

[root@czg2 Pkg]# su - kingbase 
上一次登录:一 2月 10 16:16:11 CST 2025pts/1 上
[kingbase@czg2 ~]$ ulimit -a
core file size          (blocks, -c) unlimited
data seg size           (kbytes, -d) unlimited
scheduling priority             (-e) 0
file size               (blocks, -f) unlimited
pending signals                 (-i) 23657
max locked memory       (kbytes, -l) 64
max memory size         (kbytes, -m) unlimited
open files                      (-n) 65536
pipe size            (512 bytes, -p) 8
POSIX message queues     (bytes, -q) 819200
real-time priority              (-r) 0
stack size              (kbytes, -s) 8192
cpu time               (seconds, -t) unlimited
max user processes              (-u) 65536
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited

5、目录创建

[root@czg2 ~]# mkdir -p /opt/Kingbase/ES/V9

6、权限赋予

[root@czg2 ~]# chown -R kingbase:kingbase /opt/Kingbase/
[root@czg2 ~]# chmod -R 755 /opt/Kingbase/

7、镜像挂载

[root@czg2 Pkg]# mount -o loop KingbaseES_V009R001C002B0014_Lin64_install.iso /opt/Pkg/KingbaseES

8、拷贝文件

[root@czg2 Pkg]# cp -r /opt/Pkg/KingbaseES/setup* .

9、镜像卸载

[root@czg2 Pkg]# umount /opt/Pkg/KingbaseES

10、权限赋予

[root@czg2 ~]# chown -R kingbase:kingbase /opt/Pkg/setup*
[root@czg2 ~]# chmod -R 755 /opt/Pkg/setup*

11、操作系统语言修改

[root@czg2 ~]# echo $LANG
zh_CN.UTF-8

命令行安装中文文字提示。

[kingbase@czg2 Pkg]$ export LANG=zh_CN.UTF-8

命令行安装英文文字提示。

[kingbase@czg2 Pkg]$ export LANG=en_US.UTF-8

12、程序安装

[kingbase@czg2 Pkg]$ sh setup.sh -i console
Now launch installer...
Preparing to install
Extracting the JRE from the installer archive...
Unpacking the JRE...
Extracting the installation resources from the installer archive...
Configuring the installer for this system's environment...
          Verifying JVM........
Launching installer...

===============================================================================
KingbaseES V9                                           (使用 InstallAnywhere 创建)
-------------------------------------------------------------------------------

正在准备控制台模式安装...




===============================================================================


请稍候
---



===============================================================================
简介
--

本安装程序将指导您完成 KingbaseES V9 的安装。

建议您在继续本次安装前,退出所有程序。
如果要回到前一屏幕进行更改,可输入“back”。

如果要取消本次安装,可随时输入“quit”。

KingbaseES Version: V9
Kingbase Type:BMJ-NO
Installer Version: V009R001C002B0014
Install DATE:202502100552

Kingbase Inc.
        http://www.kingbase.com.cn

请按 <ENTER> 键继续: 

回车继续

===============================================================================


请稍候
---



===============================================================================
许可协议
----

安装和使用 KingbaseES V9 产品之前,您须接受下列许可协议:


北京人大金仓信息技术股份有限公司
“软件最终用户许可协议”

    重要须知,请认真阅读:本《最终用户许可协议》(以下
称《协议》)是您(个人或单一实体)与北京人大金仓信息
技术股份有限公司(以下简称“人大金仓”)之间有关上述
人大金仓软件产品的法律协议。
本“软件产品”包括计算机软件,并可能包括相关媒体、
印刷材料和联机文档(“软件产品”)。本“软件产品”还
包括对人大金仓提供给您的原“软件产品”的任何更新和补
充资料。任何与本“软件产品”一同提供给您的并与单独一
份软件许可证相关的软件产品是根据本《协议》中的条款而
授予您。您一旦安装、复制、下载、
访问或以其它方式使用“软件产品”,
即表示您同意接受本《协议》各项条款的约束。
如您不同意本《协议》中的条款,请不要安装、
复制或使用“软件产品”。

软件产品许可证

    本“软件产品”受著作权法及国际著作权条约和其它知识
产权法和条约的保护。

请按 <ENTER> 键继续: 

回车继续

本“软件产品”只许可使用,而不出售。

1、许可证的授予。只要您遵守本《协议》,
人大金仓将授予您下列非独占性的不可转让的权利:
    应用软件。
本软件的使用应在相应合同上规定的地点上使用。使用应受
到购买的数量和许可种类(如合同中所约定)的使用限制所
制约。如果许可种类没有特殊说明,
则您只能在单一一台计算机、工作站、手持式计算机、
智能电话或其他数字电子仪器(“计算机”)上安装、使用、
访问、显示、运行或以其他方式互相作用于(“运行”)本
“软件产品”的一份副本

    保留权利。除本协议中具体的规定外,
未明示授予的一切其它权利均为人大金仓所有。
人大金仓保留对本协议内容的解释权。

2、其它权利和限制的说明。

    限制转让。在任何情况下,
没有人大金仓的事先书面同意,
您不得转让本协议或本协议项下授予的任何使用许可。

请按 <ENTER> 键继续: 

回车继续

    非再销售性软件。
如果本“软件产品”标明“非再销售品”,
则无论本《协议》其它条款有如何说明,
您对本“软件产品”的使用只限于演示、测试或评价目的,
而您不得再销售或以其它方式有偿转让本“软件产品”。

    对反向工程、反向编译、反汇编的限制。
您不得对本“软件产品”进行反向工程、
反向编译或反汇编;尽管有此限制,
但如果适用法律明示允许上述活动,
并仅在适用法律明示允许的范围内从事上述活动,
则不在此限。

    商标。本《协议》不授予您任何有关人大金仓商标或服务
商标的权利。

出租限制。不得出租、租赁或出借本“软件产品”。

    出口限制。您承认本“软件产品”受中国出口法律管辖。
您同意遵守所有适用于本“软件产品”的国际法和国内法,
包括《中华人民共和国对外贸易法》,

请按 <ENTER> 键继续: 

回车继续

以及中国政府颁布的相关软件出口的限制和规定。

    支持服务。人大金仓为您提供与“软件产品”有关的支持
服务(“支持服务”),
但支持服务的具体内容受相关合同的制约,
人大金仓保留对支持服务进行收费的权利。
支持服务的使用受用户手册、联机文档和/或其它人大金仓提
供的材料中所述的各项政策和计划的制约。提供给您作为支
持服务的一部份的任何附加软件代码应被视为本“软件产品
”的一部分,并须符合本《协议》中的各项条款和条件。
至于您提供给人大金仓作为支持服务的一部分的技术信息,
人大金仓可将其用于商业用途,包括产品支持和开发。
除了在为您提供支持时必须的情况外,
人大金仓在使用这些技术信息时不会以个人形式提及您。

    协议终止。如您未遵守本《协议》的各项条款和条件,
在不损害其它权利的情况下,人大金仓可终止本《协议》。
如此类情况发生,
您必须销毁“软件产品”的所有副本及其所有组成部分。

3、升级版本。如本“软件产品”标明为升级版本,您必须获
取由人大金仓标明为合格使用升级版本的产品的许可证方可

请按 <ENTER> 键继续: 

请一直回车直到出现如下画面

《中华人民共和国计算机软件保护条例》、
《中华人民共和国商标法》、《中华人民共和国专利法》、
《中华人民共和国反不正当竞争法》等法律法规)。
因本协议或其违约引起的或与之有关的任何争论或索赔,
应由人大金仓所在地人民法院管辖。
人大金仓的知识产权如被侵犯,上述规定不限制人大金仓就
此向具有合法管辖权的法院请求做出强制性的补救措施。

人大金仓的联系方式如下:

地址:北京市朝阳区容达路7号中国电科太极信息产业园B座三
层
邮编:100102
电话:86-10-5885 1118
网址:www.kingbase.com.cn
全国服务热线:400-601-1188
技术支持邮箱:support@kingbase.com.cn


是否接受此许可协议条款? (Y/N): 

Y

===============================================================================
选择安装集
-----

请选择将由本安装程序安装的“安装集”。

  ->1- 完全安装
    2- 客户端安装

    3- 定制安装

输入“安装集”的号码,或按 <ENTER> 键以接受缺省值

1

===============================================================================
选择授权文件
------

不选择授权文件,则使用软件自带试用版授权
提示:请在有效期内及时更换正式授权文件。

文件路径 : 

/opt/Pkg/license_41248/license_41248_0.dat

用的是官网提供的企业版试用Key。没有的话回车就行

License序列号 --- 启用 --- 197C9F62-3209-11EF-AACD-000C29CBE49F
生产日期 --- 启用 --- 2024-06-24
产品名称 --- 启用 --- KingbaseES V8
细分版本模板名 --- 启用 --- SALES-企业版 V9R1
产品版本号 --- 启用 --- V009R001C
浮动基准日期 ------ 启用
有效期间 --- 启用 --- 90
用户名称 --- 启用 --- 官方网站试用授权
项目名称 --- 启用 --- 官方网站试用授权
CPU检查 --- 启用 --- 0
容器名称 --- 禁用 --- 0
MAC地址 --- 启用 --- 00:00:00:00:00:00
最大连接数 --- 启用 --- 0
分区 --- 启用 --- 0
物理同步 --- 启用 --- 0
读写分离模块 --- 启用 --- 0
恢复到指定时间点 --- 启用 --- 0
集群对网络故障的容错 --- 启用 --- 0
快速加载 --- 启用 --- 0
日志压缩 --- 启用 --- 0
全文检索 --- 启用 --- 0
性能优化包(性能诊断) --- 启用 --- 0
性能优化包(性能调优) --- 启用 --- 0
保密通讯协议 --- 启用 --- 0
审计 --- 启用 --- 0
三权分立 --- 启用 --- 0
透明加密 --- 启用 --- 0
强制访问控制 --- 启用 --- 0
列加密 --- 启用 --- 0
密码复杂度 --- 启用 --- 0
用户锁定 --- 启用 --- 0
集群管理软件 --- 启用 --- 0
集群配置工具 --- 启用 --- 0
集群高级管理包 --- 启用 --- 0
并行查询 --- 启用 --- 0
并行备份还原 --- 启用 --- 0
异构数据源 --- 启用 --- 0
日志解析 --- 启用 --- 0
GIS --- 启用 --- 0
日志解析为SQL --- 启用 --- 0
操作系统类型 --- 启用 --- 0
数据守护集群 --- 启用 --- 0
多活共享存储集群 --- 启用 --- 0



===============================================================================
选择安装目录
------

请选择一个安装目录。

您想在哪一位置安装?

  缺省安装文件夹: /opt/Kingbase/ES/V9

输入一个绝对路径,或按 <ENTER> 键以接受缺省路径
      : 

回车

===============================================================================
预安装摘要
-----

在继续执行前请检查以下信息:

产品名:
    KingbaseES V9

安装文件夹:
    /opt/Kingbase/ES/V9

产品功能部件:
    数据库服务器,
    接口,
    数据库部署工具,
    高可用组件,
    数据库开发管理工具,
    数据库迁移工具

安装空间磁盘信息
    所需磁盘空间: 5378 MB           空闲磁盘空间: 8797 MB



请按 <ENTER> 键继续: 

回车

===============================================================================
准备就绪,可以安装
---------

本安装程序已准备完毕,可在下列位置安装 KingbaseES V9:

/opt/Kingbase/ES/V9

按 <ENTER> 键进行安装: 

回车

选择存储数据的文件夹
----------

请选择一个文件夹,该文件夹必须为空。

Data folder (默认﹕ /opt/Kingbase/ES/V9/data): 

回车

数据库端口
-----

请输入数据库服务监听端口,默认54321。

端口 (默认﹕ 54321): 

回车

数据库管理员
------

请输入数据库管理员用户名。

User (默认﹕ system):

回车

输入密码
----

本次安装需输入密码才能继续。

请输入密码: 请输入密码:*******



===============================================================================
再次输入密码
------

本次安装需再次输入密码才能继续。

请再次输入密码: 请再次输入密码:*******

自定义密码

数据库服务字符集
--------

请输入服务端字符集编码。

    1- default
  ->2- UTF8
    3- GBK
    4- GB2312
    5- GB18030

输入您选择的号码,或按 <ENTER> 键以接受缺省值: 

回车

区域
--

请输入数据库区域。

    1- C
  ->2- zh_CN.UTF-8
    3- en_US.UTF-8

输入您选择的号码,或按 <ENTER> 键以接受缺省值: 

回车

数据库兼容模式
-------

请输入数据库兼容模式。

    1- PG
  ->2- ORACLE
    3- MySQL

输入您选择的号码,或按 <ENTER> 键以接受缺省值: 

回车

字符大小写敏感特性
---------

请输入字符大小写敏感特性。

  ->1- YES
    2- NO

输入您选择的号码,或按 <ENTER> 键以接受缺省值:

回车

存储块大小
-----

请输入存储块大小。

  ->1- 8k
    2- 16k
    3- 32k

输入您选择的号码,或按 <ENTER> 键以接受缺省值: 

回车

身份认证方法
------

请选择身份认证方法。

  ->1- scram-sha-256
    2- scram-sm3
    3- sm4
    4- sm3

输入您选择的号码,或按 <ENTER> 键以接受缺省值:

回车

自定义参数
-----

请输入自定义初始化数据库参数。

Custom (默认﹕  ): 

自定义参数(自定义),可自由输入任何值,作为初始化数据库的参数 有关数据库初始化参数,详情可见《KingbaseES 服务器应用参考手册》第2章 自定义特殊参数:

(如果输入值包含以下某一项,请注意特殊情况)-c:初始化生成的配置文件会被加密,此时设置的端口值不会在初始化阶段进行修改,启动 King baseES 服务时将使用默认端口值54321。

注意: 输入的参数值不能包含-W,--pwprompt,% 和 $。

我这边就回车了

提示
--

数据库即将被安装,需要花费一些时间,请耐心等待。

请按 <ENTER> 键继续: 

回车

安装完成
----

恭喜!KingbaseES V9 已成功地安装到:

/opt/Kingbase/ES/V9

如果您需要将 KingbaseES V9 注册为系统服务,请运行

    /opt/Kingbase/ES/V9/install/script/root.sh

按 <ENTER> 键以退出安装程序: 
Complete.

13、系统服务注册

root用户执行

[root@czg2 ~]# /opt/Kingbase/ES/V9/install/script/root.sh
Starting KingbaseES V9: 
等待服务器进程启动 ...... 完成
服务器进程已经启动
KingbaseES V9 started successfully

14、登录数据库

[kingbase@czg2 bin]$ ./ksql -p 54321 -U system -d kingbase
用户 system 的口令:
输入 "help" 来获取帮助信息.

kingbase=# select version();
                                                       version                                                        
----------------------------------------------------------------------------------------------------------------------
 KingbaseES V009R001C002B0014 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-28), 64-bit
(1 行记录)

15、停止数据库

[kingbase@czg2 bin]$ pwd
/opt/Kingbase/ES/V9/Server/bin

[kingbase@czg2 bin]$ ./sys_ctl stop -m fast -w -D /opt/Kingbase/ES/V9/data
等待服务器进程关闭 ...... 完成
服务器进程已经关闭

或

[root@czg2 Pkg]# systemctl stop kingbased

16、启动数据库

[kingbase@czg2 bin]$ ./sys_ctl -w start -D /opt/Kingbase/ES/V9/data -l "/opt/Kingbase/ES/V9/data/sys_log/startup.log"
等待服务器进程启动 ....... 完成
服务器进程已经启动

或

[root@czg2 Pkg]# systemctl start kingbased

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

双周报Vol.65:新增is表达式、字符串构造和数组模式匹配增强、IDE模式匹配补全增强...多项技术更新!

MoonBit更新 新增 is 表达式 这个表达式的语法形式为 expr is pat&#xff0c;这个表达式为 Bool 类型&#xff0c;当 expr 符合 pat 这个模式的时候返回 true&#xff0c;比如&#xff1a; fn use_is_expr(x: Int?) -> Unit {if x is Some(i) && i > 10 { .…

【Apache Paimon】-- 作为一名小白,如何系统地学习 Apache paimon?

目录 一、整体规划 1. 了解基本概念与背景 2. 学习资料的选择 3. 学习路径与规划 4. 学习建议 5. 注意事项 6. 参考学习资料 二、详细计划 阶段 1&#xff1a;了解基础&#xff08;1-2 周&#xff09; 阶段 2&#xff1a;深入掌握核心功能&#xff08;3-4 周&#xf…

查出 product 表中所有 detail 字段包含 xxx 的完整记录

您可以使用以下 SQL 查询语句来查出 product 表中所有 detail 字段包含 oss.kxlist.com 的完整记录&#xff1a; SELECT * FROM product WHERE INSTR(detail, oss.kxlist.com) > 0;下面是detail字段包含的完整内容 <p><img style"max-width:100%;" src…

深度剖析责任链模式

一、责任链模式的本质&#xff1a;灵活可扩展的流水线处理 责任链模式&#xff08;Chain of Responsibility Pattern&#xff09;是行为型设计模式的代表&#xff0c;其核心思想是将请求的发送者与接收者解耦&#xff0c;允许多个对象都有机会处理请求。这种模式完美解决了以下…

大数据项目7:基于大数据的天气数据分析和可视化系统

项目简介 本项目主要研究的内容是基于大数据分析和挖掘的技术&#xff0c;结合海量的天气数据&#xff0c;对异常灾害数据进行分析和预测&#xff0c;发现异常气象中的规律。当下大数据的技术正在高速发展&#xff0c;并且在教育&#xff0c;金融&#xff0c;农业&#xff0c…

PyQt学习记录01——加法计算器

0. 安装配置 0.1 安装相关库 首先打开你的PyCharm程序&#xff0c;然后新建一个目录用于学习&#xff0c;其次在terminal中输入 pip install pyqt5如果你不具有科学上网能力&#xff0c;请改为国内源 pip install pyqt5 -i https://pypi.douban.com/simple然后安装pyqt相关…

pytest测试专题 - 1.2 如何获得美观的测试报告

<< 返回目录 1 pytest测试专题 - 1.2 如何获得美观的测试报告 1.1 背景 虽然pytest命令的报文很详细&#xff0c;用例在执行调试时还算比较方便阅读和提取失败信息&#xff0c; 但对于大量测试用例运行时&#xff0c;可能会存在以下不足 报文被冲掉测试日志没法归档 …

嵌入式八股文面试题(二)C语言算法

相关概念请查看文章&#xff1a;C语言概念。 1. 如何实现一个简单的内存池&#xff1f; 简单实现&#xff1a; #include <stdio.h> #include <stdlib.h>//内存块 typedef struct MemoryBlock {void *data; // 内存块起始地址struct MemoryBlock *next; // 下一个内…

树莓派上 基于Opencv 实现人脸检测与人脸识别

一&#xff0c;需求 基于树莓派4b&#xff0c;usb1080p摄像头&#xff0c;实现人脸检测与人脸识别。尝试了海陵科的模组和百度的sdk。海陵科的模组无法录入人脸&#xff0c;浪费了100多块钱。百度的sdk 在树莓派上也无法录入人脸&#xff0c;官方解决不了。最后只能用opencv自…

机器学习10-卷积和卷积核3

机器学习10-卷积和卷积核3 纹理表示卷积神经网络全链接神经网络的瓶颈卷积网络中的卷积操作特征响应图组尺寸计算 池化操作示例 图像增强翻转随机缩放抠图色彩抖动其他方案1. 平移2. 旋转3. 拉伸4. 径向畸变5. 裁剪 纹理表示 如何去表示纹理&#xff1f; 基于卷积核组的纹理表…

Ollama部署DeepSeek(windows or ubuntu)

Ollama(官网是https://ollama.com/)是一个专为在本地机器上便捷部署和运行大型语言模型&#xff08;LLM&#xff09;而设计的开源框架。它简化了大型语言模型的部署过程&#xff0c;提供了轻量级与可扩展的架构&#xff0c;使得研究人员、开发人员和爱好者能够更加方便地在本地…

嵌入式知识点总结 操作系统 专题提升(五)-内存

针对于嵌入式软件杂乱的知识点总结起来&#xff0c;提供给读者学习复习对下述内容的强化。 目录 1.在1G内存的计算机能否malloc&#xff08;1.2G&#xff09;&#xff1f;为什么&#xff1f; 2.malloc能申请多大的空间&#xff1f; 3.内存管理有哪几种方式&#xff1f; 4.什…

Lucene 中的并发错误:如何修复乐观并发失败

作者&#xff1a;来着 Elastic Benjamin Trent 及 Ao Li 感谢 CMU PASTA 实验室开发的确定性并发测试框架 Fray&#xff0c;我们找到了一个棘手的 Lucene 漏洞并将其修复。 是的&#xff0c;另一个修复错误博客。但这个故事有一个转折&#xff0c;一位开源英雄突然出现并拯救了…

redis 缓存击穿问题与解决方案

前言1. 什么是缓存击穿?2. 如何解决缓存击穿?怎么做?方案1: 定时刷新方案2: 自动续期方案3: 定时续期 如何选? 前言 当我们使用redis做缓存的时候,查询流程一般是先查询redis,如果redis未命中,再查询MySQL,将MySQL查询的数据同步到redis(回源),最后返回数据 流程图 为什…

【分布式理论9】分布式协同:分布式系统进程互斥与互斥算法

文章目录 一、互斥问题及分布式系统的特性二、分布式互斥算法1. 集中互斥算法调用流程优缺点 2. 基于许可的互斥算法&#xff08;Lamport 算法&#xff09;调用流程优缺点 3. 令牌环互斥算法调用流程优缺点 三、三种算法对比 在分布式系统中&#xff0c;多个应用服务可能会同时…

【车载项目】 systemui下拉负一屏界面,通过语音输入:“中文模式/英文模式“,会闪现一下负一屏下层的画面

1、背景 【操作步骤】负一屏界面&#xff0c;语音输入&#xff1a;“中文模式/英文模式” 【预期结果】显示正常 【实际结果】 会闪现一下负一屏下层的文字 【发生概率】必现 systemui下拉负一屏界面&#xff0c;通过语音输入&#xff1a;“中文模式/英文模式”&#xff0c;会…

CSS 渐变效果详解——线性渐变与径向渐变

在现代前端开发中&#xff0c;CSS 渐变被广泛应用于网页背景、按钮、图形等元素的渲染。相较于使用图片&#xff0c;实现渐变可以减少资源请求&#xff0c;同时也更灵活。今天我们主要介绍两种常用的渐变类型&#xff1a;线性渐变&#xff08;Linear Gradient&#xff09;与径向…

【愚公系列】《Python网络爬虫从入门到精通》001-初识网络爬虫

标题详情作者简介愚公搬代码头衔华为云特约编辑&#xff0c;华为云云享专家&#xff0c;华为开发者专家&#xff0c;华为产品云测专家&#xff0c;CSDN博客专家&#xff0c;CSDN商业化专家&#xff0c;阿里云专家博主&#xff0c;阿里云签约作者&#xff0c;腾讯云优秀博主&…

如何借鉴GitHub开源项目进行LabVIEW开发

在设备开发过程中&#xff0c;许多开发者选择借鉴GitHub等平台上的开源项目&#xff0c;特别是当目标程序没有LabVIEW版本时。比如&#xff0c;在本例中&#xff0c;我们看到一个开源的Micro-Manager项目&#xff0c;它主要使用Java、C、Python等编程语言。对于LabVIEW开发者来…

大前端之前端开发接口测试工具postman的使用方法-简单get接口请求测试的使用方法-简单教学一看就会-以实际例子来说明-优雅草卓伊凡

大前端之前端开发接口测试工具postman的使用方法-简单get接口请求测试的使用方法-简单教学一看就会-以实际例子来说明-优雅草卓伊凡 背景 前端开发接口请求&#xff0c;调试&#xff0c;联调&#xff0c;接入数据&#xff0c;前端必不可少工具&#xff0c;postman是一个非常好…