Centos部署openGauss6.0创新版本,丝滑的体验

news2024/10/6 6:44:40

作者:IT邦德
中国DBA联盟(ACDU)成员,10余年DBA工作经验,
Oracle、PostgreSQL ACE
CSDN博客专家及B站知名UP主,全网粉丝10万+
擅长主流Oracle、MySQL、PG、高斯及Greenplum备份恢复,
安装迁移,性能优化、故障应急处理

文章目录

    • 前言
    • 📣 1.版本说明
    • 📣 2.新特性介绍
    • 📣 3.安装包下载
    • 📣 4.部署前准备
      • ✨ 4.1 关闭安全服务
      • ✨ 4.2 防火墙关闭
      • ✨ 4.3 host配置
      • ✨ 4.4 安装依赖包
      • ✨ 4.5 安装python3
    • 📣 5.单机安装
      • ✨ 5.1 前提条件
      • ✨ 5.2 安装包解压
      • ✨ 5.3 XML配置文件
      • ✨ 5.4 用户及组创建
      • ✨ 5.5 初始化安装
      • ✨ 5.6 正式安装
    • 📣 6.安装验证
      • ✨ 6.1 DB状态检查
      • ✨ 6.2 数据库登陆
      • ✨ 6.3 DB启动及关闭
    • 📣 7.总结及故障处理

文章目录

    • 前言
    • 📣 1.版本说明
    • 📣 2.新特性介绍
    • 📣 3.安装包下载
    • 📣 4.部署前准备
      • ✨ 4.1 关闭安全服务
      • ✨ 4.2 防火墙关闭
      • ✨ 4.3 host配置
      • ✨ 4.4 安装依赖包
      • ✨ 4.5 安装python3
    • 📣 5.单机安装
      • ✨ 5.1 前提条件
      • ✨ 5.2 安装包解压
      • ✨ 5.3 XML配置文件
      • ✨ 5.4 用户及组创建
      • ✨ 5.5 初始化安装
      • ✨ 5.6 正式安装
    • 📣 6.安装验证
      • ✨ 6.1 DB状态检查
      • ✨ 6.2 数据库登陆
      • ✨ 6.3 DB启动及关闭
    • 📣 7.总结及故障处理

前言

2024年3月30日,openGauss 6.0.0版本正式上线.迫不及待的体验了一把,分享给大家

📣 1.版本说明

openGauss社区版本分为长期支持版本和创新版本:
长期支持版本 (LTS) :规模上线使用,openGauss 6.0.0 LTS及后续LTS版本发布间隔周期为2年,社区提供3年支持,社区OGSP伙伴提供3年以后维护支持服务。
创新版本 (RCx) :作为LTS版本发布前的阶段性特性体验版本,仅供联创测试使用,提供6个月社区支持。

openGauss 6.0.0-RC1 是社区最新发布的创新版本,版本生命周期为 0.5 年。(创新版本命名:由原方案 XX.1.0 Preview (例:5.1.0 preview),调整为现方案 XX.0.0-RCx),本次发布包含 2 个数据库服务端安装版本:企业版、轻量版,用户可根据使用场景需要下载不同版本,并基于此进行场景化验证,提前发现问题并反馈社区,社区将在下个 LTS 版本发布前进行问题修复,openGauss 6.0.0 LTS 版本将在 2024 年 9 月 30 日进行发布。

openGauss社区版本生命周期管理如下

image.png

📣 2.新特性介绍

1.内核能力增强
企业级特性:存储过程增强
内核四高能力:高性能、高可用、高智能、高安全

2.DataPod 三层资源池化架构持续创新
支持 SPQ 多机并行查询框架
新增 DMS 资源统计视图
DSS 功能增强
容灾能力增强

3.DataKit 数据全生命周期管理平台能力增强
迁移能力、对象管理、智能运维、安装部署

4.生态兼容性增强
MySQL 兼容

📣 3.安装包下载

更多具体发行说明请参考官网:
https://docs-opengauss.osinfra.cn/zh/docs/latest/docs/ReleaseNotes/Releasenotes.html
6.0.0 RC1版本下载地址
https://opengauss.org/zh/download/
openGauss-6.0.0-RC1-CentOS-64bit-all.tar.gz

image.png

📣 4.部署前准备

✨ 4.1 关闭安全服务

修改/etc/selinux/config文件中的“SELINUX”值为“disabled”。

✨ 4.2 防火墙关闭

systemctl status firewalld
若防火墙状态显示为active (running),则表示防火墙未关闭,请关闭防火墙。
systemctl stop firewalld.service
systemctl disable firewalld.service
systemctl status firewalld.service

临时关闭selinux
setenforce 0
查看selinux状态
getenforce

✨ 4.3 host配置

[root@centos79 ~]# cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.6.20 centos79

✨ 4.4 安装依赖包

##创建挂载目录
mkdir /cdrom

##挂载目录
mount -t iso9660 -o ro /dev/cdrom /cdrom

##yum源配置文件
cd /etc/yum.repos.d/
mkdir bak
mv CentOS* bak

##配置yum文件
vi local.repo


cat>/etc/yum.repos.d/local.repo<<EOF
[base-local]
name=CentOS7-local
baseurl=file:///cdrom
enabled=1
gpgcheck=0
EOF


#清空并重载yum
yum clean all
yum makecache

##安装依赖
yum -y install libaio-devel flex bison ncurses-devel \
glibc-devel patch redhat-lsb-core readline-devel openssl-devel sqlite-devel libnsl

✨ 4.5 安装python3

Python3安装还依赖zlib,如果没有先安装依赖,这里我们安装python3.6的版本
[root@centos79 ~]# yum install -y zlib
[root@centos79 ~]# rpm -qa | grep zlib
zlib-devel-1.2.7-18.el7.x86_64
zlib-1.2.7-18.el7.x86_64

python官网 https://www.python.org/downloads/release/python-3615/下载安装包即可
安装包为:Python-3.6.15.tgz

[root@centos79 ~]# tar -zxvf Python-3.6.15.tgz
[root@centos79 ~]# cd Python-3.6.15/
[root@centos79 ~]# ./configure --prefix=/usr/local/python3 --enable-shared
[root@centos79 ~]# make
[root@centos79 ~]# make install
注意:make编译时间比较长,耐心等待

configure: error: no acceptable C compiler found in $PATH
yum install gcc

注意此时还需要设置下OS上python的软连接
[root@centos79 ~]# ln -s /usr/local/python3/bin/python3.6 /usr/bin/python3
[root@centos79 ~]# ln -s /usr/local/python3/bin/pip3 /usr/bin/pip

[root@centos79 Python-3.6.15]# python -V
python: error while loading shared libraries: libpython3.6m.so.1.0: cannot open shared object file: No such file or directory
[root@centos79 Python-3.6.15]# find / -name libpython3.6m.so.1.0
/usr/local/python3/lib/libpython3.6m.so.1.0
/opt/Python-3.6.15/libpython3.6m.so.1.0


cp /opt/Python-3.6.15/libpython3.6m.so.1.0 /usr/lib64/

[root@centos79 Python-3.6.15]# python
Python 3.6.15 (default, Apr  5 2024, 09:38:03) 
[GCC 4.8.5 20150623 (Red Hat 4.8.5-44)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>

📣 5.单机安装

✨ 5.1 前提条件

前提条件:
已完成用户组和普通用户的创建。
所有服务器操作系统和网络均正常运行。
普通用户必须有数据库包解压路径、安装路径的读、写和执行操作权限,并且安装路径必须为空。
普通用户对下载的openGauss压缩包有执行权限。
安装前请检查指定的openGauss端口矩阵中所有端口是否被占用,如果被占用请更改端口或者停止当前使用端口进程。

✨ 5.2 安装包解压

注意:上传安装包到服务器/opt/openGauss
mkdir -p /opt/openGauss

--openGauss安装目录
mkdir -p /openGauss 

##解压安装包
chmod 755 -R /opt/openGauss
cd /opt/openGauss
[root@centos79 openGauss]# tar -zxvf openGauss-6.0.0-RC1-CentOS-64bit-all.tar.gz
[root@centos79 openGauss]# ll
openGauss-6.0.0-RC1-CentOS-64bit-cm.tar.gz
openGauss-6.0.0-RC1-CentOS-64bit-om.tar.gz
openGauss-6.0.0-RC1-CentOS-64bit.tar.bz2
openGauss-6.0.0-RC1-CentOS-64bit-cm.sha256
openGauss-6.0.0-RC1-CentOS-64bit-om.sha256
openGauss-6.0.0-RC1-CentOS-64bit.sha256
upgrade_sql.tar.gz
upgrade_sql.sha256

[root@centos79 openGauss]# tar -zxvf openGauss-6.0.0-RC1-CentOS-64bit-om.tar.gz
[root@centos79 openGauss]# ll
total 293256
drwxr-xr-x. 19 root root      4096 Mar 31 12:15 lib
-rwxr-xr-x.  1 root root 149449208 Apr  5 09:31 openGauss-6.0.0-RC1-CentOS-64bit-all.tar.gz
-rw-r--r--.  1 root root       109 Mar 31 12:16 openGauss-6.0.0-RC1-CentOS-64bit-cm.sha256
-rw-r--r--.  1 root root  22466710 Mar 31 12:16 openGauss-6.0.0-RC1-CentOS-64bit-cm.tar.gz
-rw-r--r--.  1 root root        65 Mar 31 12:15 openGauss-6.0.0-RC1-CentOS-64bit-om.sha256
-rw-r--r--.  1 root root  23122340 Mar 31 12:15 openGauss-6.0.0-RC1-CentOS-64bit-om.tar.gz
-rw-r--r--.  1 root root        65 Mar 31 12:16 openGauss-6.0.0-RC1-CentOS-64bit.sha256
-rw-r--r--.  1 root root 104672194 Mar 31 12:16 openGauss-6.0.0-RC1-CentOS-64bit.tar.bz2
drwxr-xr-x. 11 root root      4096 Mar 31 12:15 script
-rw-------.  1 root root        65 Mar 31 12:14 upgrade_sql.sha256
-rw-------.  1 root root    541779 Mar 31 12:14 upgrade_sql.tar.gz
-rw-r--r--.  1 root root        36 Mar 31 12:15 version.cfg

✨ 5.3 XML配置文件

安装openGauss前需要创建cluster_config.xml文件。
cluster_config.xml文件包含部署openGauss的服务器信息、安装路径、IP地址以及端口号等。

本次部署以单节点配置的方式创建XML配置文件

编辑配置XML文件:
vi /opt/openGauss/db_config.xml

<?xml version="1.0" encoding="UTF-8"?>
<ROOT>
    <!-- openGauss整体信息 -->
    <CLUSTER>
        <!-- 数据库名称 -->
        <PARAM name="clusterName" value="dbCluster" />
        <!-- 数据库节点名称(hostname) -->
        <PARAM name="nodeNames" value="centos79" />
        <!-- 数据库安装目录-->
        <PARAM name="gaussdbAppPath" value="/openGauss/app" />
        <!-- 日志目录-->
        <PARAM name="gaussdbLogPath" value="/openGauss/log/omm" />
        <!-- 临时文件目录-->
        <PARAM name="tmpMppdbPath" value="/openGauss/tmp" />
        <!-- 数据库工具目录-->
        <PARAM name="gaussdbToolPath" value="/openGauss/om" />
        <!-- 数据库core文件目录-->
        <PARAM name="corePath" value="/openGauss/corefile" />
        <!-- 节点IP,与数据库节点名称列表一一对应 -->
        <PARAM name="backIp1s" value="192.168.6.20"/>
    </CLUSTER>
    <!-- 每台服务器上的节点部署信息 -->
    <DEVICELIST>
        <!-- 节点1上的部署信息 -->
        <DEVICE sn="centos79">
            <!-- 节点1的主机名称 -->
            <PARAM name="name" value="centos79"/>
            <!-- 节点1所在的AZ及AZ优先级 -->
            <PARAM name="azName" value="AZ1"/>
            <PARAM name="azPriority" value="1"/>
            <!-- 节点1的IP,如果服务器只有一个网卡可用,将backIP1和sshIP1配置成同一个IP -->
            <PARAM name="backIp1" value="192.168.6.20"/>
            <PARAM name="sshIp1" value="192.168.6.20"/>
               
	    <!--dbnode-->
	    <PARAM name="dataNum" value="1"/>
	    <PARAM name="dataPortBase" value="15400"/>
	    <PARAM name="dataNode1" value="/openGauss/data/dn"/>
            <PARAM name="dataNode1_syncNum" value="0"/>
        </DEVICE>
    </DEVICELIST>
</ROOT>

✨ 5.4 用户及组创建

##创建用户组dbgrp
[root@centos79 ~]# groupadd dbgroup
##创建用户组dbgroup下的普通用户omm,并设置密码为Gauss_123
useradd -g dbgroup omm

✨ 5.5 初始化安装

chmod 775 /openGauss -R
chown omm:dbgroup /openGauss -R

[root@centos79 ~]# cd /opt/openGauss/script
[root@centos79 ~]# export LD_LIBRARY_PATH=/opt/openGauss/script/gspylib/clib:$LD_LIBRARY_PATH
[root@centos79 script]# ./gs_preinstall -U omm -G dbgroup -X /opt/openGauss/db_config.xml

安装集群过程中,输入omm用户密码:Gauss_123
[root@centos79 script]# /opt/openGauss/script/gs_checkos -i A -h centos79 --detail
Checking items:
    A1. [ OS version status ]                                   : Normal     
        [centos79]
        centos_7.9.2009_64bit
          
    A2. [ Kernel version status ]                               : Normal     
        The names about all kernel versions are same. The value is "3.10.0-1160.el7.x86_64".
    A3. [ Unicode status ]                                      : Normal     
        The values of all unicode are same. The value is "LANG=en_US.UTF-8".
    A4. [ Time zone status ]                                    : Normal     
        The informations about all timezones are same. The value is "+0800".
    A5. [ Swap memory status ]                                  : Warning    
        [centos79]
SwapMemory 5238681600 TotalMemory 3953942528

    A6. [ System control parameters status ]                    : Warning    
        [centos79]
        Warning reason: variable 'net.ipv4.tcp_retries1' RealValue '3' ExpectedValue '5'.
        Warning reason: variable 'net.ipv4.tcp_syn_retries' RealValue '6' ExpectedValue '5'.
        Check_SysCtl_Parameter warning.

    A7. [ File system configuration status ]                    : Warning    
        [centos79]
        Warning reason: variable 'open files' RealValue '1024' ExpectedValue '1000000'
        Warning reason: variable 'max user processes' RealValue '14950' ExpectedValue 'unlimited'

    A8. [ Disk configuration status ]                           : Normal     
        The value about XFS mount parameters is correct.   
    A9. [ Pre-read block size status ]                          : Normal     
        The value about Pre-read block size is correct.    
    A10.[ IO scheduler status ]                                 : Normal     
        The value of IO scheduler is correct.              
    A11.[ Network card configuration status ]                   : Warning    
        [centos79]
BondMode Null
        Warning reason: network 'ens33' 'mtu' RealValue '1500' ExpectedValue '8192'

    A12.[ Time consistency status ]                             : Warning    
        [centos79]
        The NTPD not detected on machine and local time is "2024-04-05 09:57:04".

    A13.[ Firewall service status ]                             : Normal     
        The firewall service is stopped.                   
    A14.[ THP service status ]                                  : Normal     
        The THP service is stopped.                        
Total numbers:14. Abnormal numbers:0. Warning numbers:5.

image.png

✨ 5.6 正式安装

#切换到omm用户
[root@centos79 ~]# su - omm
[omm@centos79 ~]$ gs_install -X /opt/openGauss/db_config.xml
此处指定数据库密码:Gauss_123

📣 6.安装验证

✨ 6.1 DB状态检查

# 通过openGauss提供的gs_om工具可以完成数据库状态检查

以omm用户身份登录服务器。
执行如下命令检查数据库状态是否正常,"cluster_state"显示"Normal"表示数据库可正常使用

[root@centos79 ~]# su - omm
[omm@centos79 ~]$ gs_om -t status
-----------------------------------------------------------------------

cluster_name    : dbCluster
cluster_state   : Normal
redistributing  : No

-----------------------------------------------------------------------

[omm@centos79 ~]$ gs_om -t status --detail
[   Cluster State   ]

cluster_state   : Normal
redistributing  : No
current_az      : AZ_ALL

[  Datanode State   ]

    node    node_ip         port      instance                   state
--------------------------------------------------------------------------------------
1  centos79 192.168.6.20    15400      6001 /openGauss/data/dn   P Primary Normal

✨ 6.2 数据库登陆

[omm@centos79 ~]$ gsql -d postgres -p 15400
gsql ((openGauss 6.0.0-RC1 build ed7f8e37) compiled at 2024-06-15 11:59:31 commit 0 last mr  )
Non-SSL connection (SSL connection is recommended when requiring high-security)
Type "help" for help.

openGauss=# \l
                          List of databases
   Name    | Owner | Encoding  | Collate | Ctype | Access privileges 
-----------+-------+-----------+---------+-------+-------------------
 postgres  | omm   | SQL_ASCII | C       | C     | 
 template0 | omm   | SQL_ASCII | C       | C     | =c/omm           +
           |       |           |         |       | omm=CTc/omm
 template1 | omm   | SQL_ASCII | C       | C     | =c/omm           +
           |       |           |         |       | omm=CTc/omm
(3 rows)

[omm@centos79 ~]$ gsql -V
gsql (openGauss 6.0.0-RC1 build ed7f8e37) compiled at 2024-06-15 11:59:31 commit 0 last mr 

✨ 6.3 DB启动及关闭

[omm@centos79 ~]$ gs_om -t stop
[omm@centos79 ~]$ gs_om -t start

📣 7.总结及故障处理

1.python3安装后报错
[root@centos79 ~]# python3 -V
python3: error while loading shared libraries: libpython3.6m.so.1.0: cannot open shared object file: No such file or directory
出现以上报错处理方法,libpython3.6m.so.1.0复制到/usr/lib64/目录下即可
[root@centos79 ~]# find / -name libpython3.6m.so.1.0
/usr/local/python3/lib/libpython3.6m.so.1.0
/opt/Python-3.6.15/libpython3.6m.so.1.0
[root@centos79 ~]# cp /usr/local/python3/lib/libpython3.6m.so.1.0 /usr/lib64
2./usr/bin/env: python3: No such file or directory
注意此时还需要设置下OS上python的软连接
[root@centos79 ~]# ln -s /usr/local/python3/bin/python3.6 /usr/bin/python3
[root@centos79 ~]# ln -s /usr/local/python3/bin/pip3 /usr/bin/pip

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Pytest框架中fixture功能详解

文章目录 1 定义 Fixture函数 2 Fixture 的函数参数 2.1 传入其他fixture函数作为参数 2.2 传入request对象参数 示例1&#xff1a;访问fixture的调用者 示例2&#xff1a;使用fixture的参数 3 Fixture 的作用域参数scope 3.1 scopeclass场景 3.2 scopesession场景 4…

ImageNet-1k 测试集 两大坑

1、官方网站提交test set标签时&#xff0c;千万不能提交zip文件&#xff0c;即便明文说可以 https://image-net.org/challenges/LSVRC/eval_server.php 不然就会浪费一次提交机会&#xff0c;直接提交submission.txt就可以&#xff0c;注意每排5个预测结果&#xff0c;用于计…

Excel报表

(Apache POI) 入门案例 P164 使用POI需要导入下面2个坐标&#xff1a; <dependency><groupId>org.apache.poi</groupId><artifactId>poi</artifactId> </dependency> <dependency><groupId>org.apache.poi</groupId>&…

[个人感悟] 缓存应该考察哪些问题?

前言 缓存, 根据冯诺依曼计算机模型, 无非是为了更高效的交互, 使用内存IO替换本地磁盘IO. 又因为内存的稀缺性, 其必然存储的是热点数据, 且较小的数据. [虽然直至今日, 已有使用缓存作为数据库的使用, 但是与磁盘IO相比, 其价格仍是数倍之多.] 当涉及缓存问题时, 又分为本地…

springboot+vue+mybatis教师工作审核系统+PPT+论文+讲解+售后

随着社会不断进步与发展&#xff0c;生活节奏不断加快&#xff0c;信息已经成为我们生活中不可缺少的一部分&#xff0c;很多学校需要掌握大量的信息来了解特定学生的需求&#xff0c;传统的做法是组织大量的人力物力对学生散发调查表&#xff0c;然后对收集的信息进行统计并得…

【SOEM主站】EtherCAT主站时钟偏移补偿

在进行EtherCAT主从通讯测试时&#xff0c;比较容易在DC配置出现错误&#xff0c;特别是使用到从站DC模式时&#xff0c;有时会报同步错误&#xff0c;有时即使没报错误伺服从站运行过程中也会出现电机轴的抖动。引起同步错误其中一个原因就是主站发送数据帧时间存在较大的抖动…

一文带你精通Android中的Activity

本文将会从活动的生命周期、启动模式、Intent数据传输、最佳实践等多维度来讲解Activity&#xff0c;希望对你有用 生命周期 深入理解活动的生命周期&#xff0c;可以帮助我们更加流畅地编程&#xff0c;并在管理系统资源方面更加游刃有余 活动状态 每个活动在生命周期中最…

《Windows API每日一练》4.4 绘制填充区域

本节讲述如何填充由线条构建的封闭区域。当我们初始化一个窗口类时&#xff0c;往往已经指定了窗口的背景色画刷&#xff08;WHITE_BRUSH&#xff09;&#xff0c;即默认的填充封闭区域背景的画刷。如果我们想更换背景颜色&#xff0c;需要选入其他系统预定义的画刷&#xff08…

助力樱桃智能自动化采摘,基于YOLOv5全系列【n/s/m/l/x】参数模型开发构建果园种植采摘场景下樱桃成熟度智能检测识别系统

随着科技的飞速发展&#xff0c;人工智能&#xff08;AI&#xff09;技术已经渗透到我们生活的方方面面&#xff0c;从智能家居到自动驾驶&#xff0c;再到医疗健康&#xff0c;其影响力无处不在。然而&#xff0c;当我们把目光转向中国的农业领域时&#xff0c;一个令人惊讶的…

几何公差的设计和选用

保证轴承的旋转精度&#xff0c;提出圆柱度&#xff1b; 这里的轴肩部面 为了测量方便&#xff0c;使用圆跳动代替垂直度公差方便一些。

胡说八道(24.6.15)——数字电子技术及Multisim仿真

上回书说到数电中的两种基本存储电路——锁存器和触发器以及时序逻辑电路的设计和分析。今天来看看触发器的几个应用&#xff0c;主要实践实践&#xff0c;不能只说概念。 首先&#xff0c;首当其冲的就是计数器&#xff0c;如果大家看过我之前记的笔记的话&#xff0c;应该不会…

vue3轮播图怎么做

先看效果 实现代码 <n-carouseleffect"card"dot-type"line"draggable:autoplay"!isHovered":current-index"currentIndex"prev-slide-style"transform: translateX(-150%) translateZ(-450px);opacity:1"next-slide-st…

SE语法总结博文(附思维导图)

Java中的规范 注释 //单行注释 /*多行注释 */ /**文档注释 */命名规范 命名时可以包含&#xff1a;字母、数字以及 下划线和 $ 符号等等。 但是不能以数字开头&#xff0c;也不能是关键字&#xff0c;且严格区分大小写。 类名&#xff1a;每个单词的首字母大写(大驼峰)&…

springboot优雅shutdown时异步线程安全优化

前面针对graceful shutdown写了两篇文章 第一篇&#xff1a; https://blog.csdn.net/chenshm/article/details/139640775 只考虑了阻塞线程&#xff0c;没有考虑异步线程 第二篇&#xff1a; https://blog.csdn.net/chenshm/article/details/139702105 第二篇考虑了多线程的安全…

Rewrite the Stars

文章目录 摘要1、引言2、相关工作3、重写星操作3.1、单层中的星操作3.2、扩展到多层3.3、特殊情况3.4、实证研究3.4.1、星操作的实证优越性3.4.2、决策边界对比3.4.3、扩展到无激活函数的网络 3.5、开放讨论与更广泛的影响 4、概念验证&#xff1a;StarNet4.1、StarNet架构4.2、…

HDU - 5651 xiaoxin juju needs help(Java JS Python C C++)

题目来源 Problem - 5651 (hdu.edu.cn) 题目描述 众所周知&#xff0c;小新是一位才华横溢的程序员。当他还是小学六年级的学生时&#xff0c;他就知道回文字符串了。 今年夏天&#xff0c;他在腾讯实习。一天&#xff0c;他的领导来找小新帮忙。他的领导给了他一个字符串&a…

LabVIEW程序的常见加密方式

LabVIEW程序的加密对于保护知识产权和敏感数据至关重要。本文将详细介绍LabVIEW程序常用的加密方式&#xff0c;包括VI加密、代码保护、文件加密和通信加密等&#xff0c;帮助开发者选择合适的加密方法来确保程序的安全性和完整性。 LabVIEW程序的常见加密方式 VI加密&#xf…

Fiddler抓包工具介绍

下载 下载:Web Debugging Proxy and Troubleshooting Tools|Fiddler 进去要填一个表 汉化版 百度网盘 请输入提取码 提取码&#xff1a;xq9t 下载过附件之后分别把两个文件 点开fiddler就ok了 配置https fiddler要想抓到https包(解密的),点击tools->options勾选三个对…

做好程序前设计

不要小看任何一道编程题目&#xff01;一定一定一定要想好之后再动手&#xff01;&#xff01;&#xff01; 带上你的草稿本&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xf…

DP:01背包问题

一、背包问题的概述 背包问题是⼀种组合优化的NP完全问题。 本质上是为了找出“带有限制条件的组合最优解” 1、根据物品的个数&#xff0c;分为如下几类&#xff1a; • 01背包问题&#xff1a;每个物品只有⼀个&#xff08;重点掌握&#xff09;• 完全背包问题&#xff1…