openEuler-22.03-LTS安裝opengauss5.0.1(包含cm集群管理)主備

環境說明

openEuler-22.0.3-LTS + opengauss5.0.1

安裝數據庫

安裝系統依賴包

yum -y install lksctp*
yum -y install psmisc
yum -y install bzip2
yum -y install unzip
yum -y install gcc
yum -y install gcc-c++
yum -y install perl
yum -y install libxml2-devel
yum -y install libaio-devel
yum -y install flex
yum -y install bison
yum -y install ncurses-devel
yum -y install glibc-devel
yum -y install patch
yum -y install readline-devel
yum -y install redhat-lsb-core
yum -y install openssh
yum -y install expect
yum -y install tcl

安裝python依賴包

[root@openeuler161 script]# pip3 install paramiko==3.4.0
[root@openeuler161 script]# pip3 install paramiko==3.4.0
WARNING: Running pip install with root privileges is generally not a good idea. Try `pip3 install --user` instead.
Looking in indexes: http://mirrors.aliyun.com/pypi/simple
Requirement already satisfied: paramiko==3.4.0 in /usr/local/lib/python3.9/site-packages (3.4.0)
Requirement already satisfied: cryptography>=3.3 in /usr/local/lib64/python3.9/site-packages (from paramiko==3.4.0) (42.0.7)
Requirement already satisfied: bcrypt>=3.2 in /usr/local/lib64/python3.9/site-packages (from paramiko==3.4.0) (4.1.3)
Requirement already satisfied: pynacl>=1.5 in /usr/local/lib64/python3.9/site-packages (from paramiko==3.4.0) (1.5.0)
Requirement already satisfied: cffi>=1.12 in /usr/local/lib64/python3.9/site-packages (from cryptography>=3.3->paramiko==3.4.0) (1.16.0)
Requirement already satisfied: pycparser in /usr/local/lib/python3.9/site-packages (from cffi>=1.12->cryptography>=3.3->paramiko==3.4.0) (2.22pip3 install paramiko==3.4.0[root@openeuler161 script]# pip3 list 
Package             Version
------------------- -------
bcrypt              4.1.3
cffi                1.16.0
configobj           5.0.6
cryptography        42.0.7
decorator           5.0.9
distro              1.6.0
gpg                 1.16.0
libcomps            0.1.18
nftables            0.1
paramiko            3.4.0
perf                0.1
pip                 21.3.1
pycairo             1.20.0
pycparser           2.22
PyGObject           3.42.0
PyNaCl              1.5.0
pyparsing           3.0.6
python-dateutil     2.8.2
python-linux-procfs 0.6.3
pyudev              0.22.0
rpm                 4.17.0
schedutils          0.6
setuptools          59.4.0
six                 1.16.0
SSSDConfig          2.6.1

出現死循環問題可參考:添加鏈接描述

下載并解壓依賴包

-rwxr-xr-x  1 omm dbgrp  108 May 12 05:47 openGauss-5.0.1-openEuler-64bit-cm.sha256
-rwxr-xr-x  1 omm dbgrp  22M May 12 05:47 openGauss-5.0.1-openEuler-64bit-cm.tar.gz
-rwxrwxr-x  1 omm dbgrp   65 May 12 05:47 openGauss-5.0.1-openEuler-64bit-om.sha256
-rwxrwxr-x  1 omm dbgrp  11M May 12 05:47 openGauss-5.0.1-openEuler-64bit-om.tar.gz
-rwxrwxr-x  1 omm dbgrp   65 May 12 05:47 openGauss-5.0.1-openEuler-64bit.sha256
-rwxrwxr-x  1 omm dbgrp  97M May 12 05:47 openGauss-5.0.1-openEuler-64bit.tar.bz2
-rw-------  1 omm dbgrp 135M May 12 07:37 openGauss-Package-bak_33b035fd.tar.gz
tar -xvf  openGauss-5.0.1-openEuler-64bit-cm.tar.gz
tar -xvf  openGauss-5.0.1-openEuler-64bit-om.tar.gz

配置xml文件

root@openeuler161 openGauss]# cat cluster_cm.xml 
<?xml version="1.0" encoding="UTF-8"?>
<ROOT><!-- openGauss整體信息 --><CLUSTER><PARAM name="clusterName" value="Cluster_template" /><PARAM name="nodeNames" value="openeuler161,openeuler162" /><PARAM name="gaussdbAppPath" value="/data/app" /><PARAM name="gaussdbLogPath" value="/data/omm" /><PARAM name="tmpMppdbPath" value="/data/tmp"/><PARAM name="gaussdbToolPath" value="/data/om" /><PARAM name="corePath" value="/data/corefile"/><PARAM name="backIp1s" value="192.168.99.161,192.168.99.162"/></CLUSTER><!-- 每臺服務器上的節點部署信息 --><DEVICELIST><!-- node1上的節點部署信息 --><DEVICE sn="openeuler161"><PARAM name="name" value="openeuler161"/><PARAM name="azName" value="AZ1"/><PARAM name="azPriority" value="1"/><!-- 如果服務器只有一個網卡可用,將backIP1和sshIP1配置成同一個IP --><PARAM name="backIp1" value="192.168.99.161"/><PARAM name="sshIp1" value="192.168.99.161"/><!-- cm主 --> <PARAM name="cmsNum" value="1"/> <PARAM name="cmDir" value="/data/cm"/> <PARAM name="cmServerPortBase" value="15300"/> <PARAM name="cmServerListenIp1" value="192.168.99.161,192.168.99.162"/> <PARAM name="cmServerHaIp1" value="192.168.99.161,192.168.99.162"/> <!-- cmServerlevel目前只支持1 --> <PARAM name="cmServerlevel" value="1"/> <!-- cms主及所有備的hostname --> <PARAM name="cmServerRelation" value="openeuler161,openeuler162"/>       <!--dn--><PARAM name="dataNum" value="1"/><PARAM name="dataPortBase" value="26000"/><PARAM name="dataNode1" value="/data/data,openeuler162,/data/data"/><PARAM name="dataNode1_syncNum" value="0"/></DEVICE><!-- node2上的節點部署信息,其中“name”的值配置為主機名稱 --><DEVICE sn="openeuler162"><PARAM name="name" value="openeuler162"/><PARAM name="azName" value="AZ1"/><PARAM name="azPriority" value="1"/><!-- 如果服務器只有一個網卡可用,將backIP1和sshIP1配置成同一個IP --><PARAM name="backIp1" value="192.168.99.162"/><PARAM name="sshIp1" value="192.168.99.162"/><!-- cm --> <PARAM name="cmDir" value="/data/cm"/> <PARAM name="cmServerPortStandby" value="15300"/> </DEVICE></DEVICELIST>
</ROOT>

配置文件說明解釋參考:cluster xml 參數解釋說明

執行gs_preinstall

cd  /opt/software/openGauss/script[root@openeuler161 script]# ./gs_preinstall -U omm -G dbgrp -X /opt/software/openGauss/cluster_cm.xml
Parsing the configuration file.
Successfully parsed the configuration file.
Installing the tools on the local node.
Successfully installed the tools on the local node.
Are you sure you want to create trust for root (yes/no)?no
Setting host ip env
Successfully set host ip env.
Distributing package.
Begin to distribute package to tool path.
Successfully distribute package to tool path.
Begin to distribute package to package path.
Successfully distribute package to package path.
Successfully distributed package.
Are you sure you want to create the user[omm] and create trust for it (yes/no)? yes
Please enter password for cluster user.
Password: 
Please enter password for cluster user again.
Password: 
Sorry. passwords do not match.
Please enter password for cluster user.
Password: 
Please enter password for cluster user again.
Password: 
Generate cluster user password files successfully.Successfully created [omm] user on all nodes.
Preparing SSH service.
Successfully prepared SSH service.
Installing the tools in the cluster.
Successfully installed the tools in the cluster.
Checking hostname mapping.
Successfully checked hostname mapping.
Creating SSH trust for [omm] user.
Please enter password for current user[omm].
Password: 
Checking network information.
All nodes in the network are Normal.
Successfully checked network information.
Creating SSH trust.
Creating the local key file.
Successfully created the local key files.
Appending local ID to authorized_keys.
Successfully appended local ID to authorized_keys.
Updating the known_hosts file.
Successfully updated the known_hosts file.
Appending authorized_key on the remote node.
Successfully appended authorized_key on all remote node.
Checking common authentication file content.
Successfully checked common authentication content.
Distributing SSH trust file to all node.
Distributing trust keys file to all node successfully.
Successfully distributed SSH trust file to all node.
Verifying SSH trust on all hosts.
Successfully verified SSH trust on all hosts.
Successfully created SSH trust.
Successfully created SSH trust for [omm] user.
Checking OS software.
Successfully check os software.
Checking OS version.
Successfully checked OS version.
Creating cluster's path.
Successfully created cluster's path.
Set and check OS parameter.
Setting OS parameters.
Successfully set OS parameters.
Warning: Installation environment contains some warning messages.
Please get more details by "/opt/software/openGauss/script/gs_checkos -i A -h openeuler161,openeuler162 --detail".
Set and check OS parameter completed.
Preparing CRON service.
Successfully prepared CRON service.
Setting user environmental variables.
Successfully set user environmental variables.
Setting the dynamic link library.
Successfully set the dynamic link library.
Setting Core file
Successfully set core path.
Setting pssh path
Successfully set pssh path.
Setting Cgroup.
Successfully set Cgroup.
Set ARM Optimization.
No need to set ARM Optimization.
Fixing server package owner.
Setting finish flag.
Successfully set finish flag.
Preinstallation succeeded.
[root@openeuler161 script]# 

系統詳細檢查

[root@openeuler161 script]# /opt/software/openGauss/script/gs_checkos -i A -h openeuler161,openeuler162 --detail
Checking items:A1. [ OS version status ]                                   : Normal     [openeuler161]openEuler_22.03_64bit[openeuler162]openEuler_22.03_64bitA2. [ Kernel version status ]                               : Normal     The names about all kernel versions are same. The value is "5.10.0-60.18.0.50.oe2203.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    [openeuler162]
SwapMemory 4152356864 TotalMemory 3478061056[openeuler161]
SwapMemory 4152356864 TotalMemory 3478061056A6. [ System control parameters status ]                    : Warning    [openeuler161]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.[openeuler162]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 ]                    : Normal     Both soft nofile and hard nofile are correct.      A8. [ Disk configuration status ]                           : Normal     The value about XFS mount parameters is correct.   A9. [ Pre-read block size status ]                          : Normal     The value about Logical block size is correct.     A10.[ IO scheduler status ]                                 : Normal     The value of IO scheduler is correct.              A11.[ Network card configuration status ]                   : Warning    [openeuler162]
BondMode NullWarning reason: network 'enp0s8' 'mtu' RealValue '1500' ExpectedValue '8192'[openeuler161]
BondMode NullWarning reason: network 'enp0s8' 'mtu' RealValue '1500' ExpectedValue '8192'A12.[ Time consistency status ]                             : Warning    [openeuler162]The NTPD not detected on machine and local time is "2024-05-12 13:20:48".[openeuler161]The NTPD not detected on machine and local time is "2024-05-12 13:20:49".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:4.

參數都正常

執行安裝

安裝需要用omm用戶
chmod 775 -R /opt/software/openGauss
su - omm
cd /opt/software/openGauss/scripts

[omm@openeuler161 script]$ ./gs_install -X /opt/software/openGauss/cluster_cm.xml 
Parsing the configuration file.
Check preinstall on every node.
Successfully checked preinstall on every node.
Creating the backup directory.
Successfully created the backup directory.
begin deploy..
Installing the cluster.
begin prepare Install Cluster..
Checking the installation environment on all nodes.
begin install Cluster..
Installing applications on all nodes.
Successfully installed APP.
begin init Instance..
encrypt cipher and rand files for database.
Please enter password for database:
Please repeat for database:
[GAUSS-50306] : The password of database is incorrect.The two passwords are different, please enter password again.
Please enter password for database:
Please repeat for database:
begin to create CA cert files
The sslcert will be generated in /data/app/share/sslcert/om
Create CA files for cm beginning.
Create CA files on directory [/data/app_33b035fd/share/sslcert/cm]. file list: ['client.key.cipher', 'client.key.rand', 'server.key.cipher', 'client.key', 'client.crt', 'server.key.rand', 'cacert.pem', 'server.key', 'server.crt']
Non-dss_ssl_enable, no need to create CA for DSS
Cluster installation is completed.
Configuring.
Deleting instances from all nodes.
Successfully deleted instances from all nodes.
Checking node configuration on all nodes.
Initializing instances on all nodes.
Updating instance configuration on all nodes.
Check consistence of memCheck and coresCheck on database nodes.
Successful check consistence of memCheck and coresCheck on all nodes.
Configuring pg_hba on all nodes.
Configuration is completed.
Starting cluster.
======================================================================
Successfully started primary instance. Wait for standby instance.
======================================================================
.
Successfully started cluster.
======================================================================
cluster_state      : Normal
redistributing     : No
node_count         : 2
Datanode Stateprimary           : 1standby           : 1secondary         : 0cascade_standby   : 0building          : 0abnormal          : 0down              : 0Successfully installed application.
end deploy..

數據庫安裝檢驗

[omm@openeuler161 script]$ gs_om -t status
-----------------------------------------------------------------------cluster_state             : Normal
redistributing            : No
balanced                  : Yes-----------------------------------------------------------------------[omm@openeuler161 script]$ gs_om -t query
[   Cluster State   ]cluster_state   : Normal
redistributing  : No
current_az      : AZ_ALL[  Datanode State   ]node        node_ip         port      instance     state
----------------------------------------------------------------------------
1  openeuler161 192.168.99.161  26000      6001       P Primary Normal
2  openeuler162 192.168.99.162  26000      6002       S Standby Normal
[omm@openeuler161 script]$ gs_om -t views
[GAUSS-50004] : The parameter '-t' value is incorrect.
[omm@openeuler161 script]$ gs_om -t view
NodeHeader:
version:301
time:1715491567
nodeCount:2
node:1
============================================================
azName:AZ1
azPriority:1
node :1
nodeName:openeuler161
ssh channel :
sshChannel 1:192.168.99.161
datanodeCount :1
datanodeInstanceType :primary
datanode 1:
datanodeLocalDataPath :/data/data
datanodeXlogPath :
datanodeListenIP 1:192.168.99.161
datanodePort :26000
datanodeLocalHAIP 1:192.168.99.161
datanodeLocalHAPort :26001
dn_replication_num: 2
datanodePeer0DataPath :/data/data
datanodePeer0HAIP 1:192.168.99.162
datanodePeer0HAPort :26001
============================================================
azName:AZ1
azPriority:1
node :2
nodeName:openeuler162
ssh channel :
sshChannel 1:192.168.99.162
datanodeCount :1
datanodeInstanceType :standby
datanode 1:
datanodeLocalDataPath :/data/data
datanodeXlogPath :
datanodeListenIP 1:192.168.99.162
datanodePort :26000
datanodeLocalHAIP 1:192.168.99.162
datanodeLocalHAPort :26001
dn_replication_num: 2
datanodePeer0DataPath :/data/data
datanodePeer0HAIP 1:192.168.99.161
datanodePeer0HAPort :26001
============================================================
[omm@openeuler161 script]$ netstat -nlpt
(Not all processes could be identified, non-owned process infowill not be shown, you would have to be root to see it all.)
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 0.0.0.0:111             0.0.0.0:*               LISTEN      -                   
tcp        0      0 192.168.99.161:26000    0.0.0.0:*               LISTEN      66901/gaussdb       
tcp        0      0 127.0.0.1:26000         0.0.0.0:*               LISTEN      66901/gaussdb       
tcp        0      0 192.168.99.161:26001    0.0.0.0:*               LISTEN      66901/gaussdb       
tcp        0      0 127.0.0.1:26001         0.0.0.0:*               LISTEN      66901/gaussdb       
tcp        0      0 192.168.99.161:26005    0.0.0.0:*               LISTEN      66901/gaussdb       
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      -                   
tcp        0      0 192.168.99.161:15300    0.0.0.0:*               LISTEN      66889/cm_server     
tcp        0      0 192.168.99.161:15301    0.0.0.0:*               LISTEN      66889/cm_server     
tcp        0      0 192.168.99.161:15302    0.0.0.0:*               LISTEN      66870/cm_agent      
tcp6       0      0 :::111                  :::*                    LISTEN      -                   
tcp6       0      0 ::1:26000               :::*                    LISTEN      66901/gaussdb       
tcp6       0      0 ::1:26001               :::*                    LISTEN      66901/gaussdb       
tcp6       0      0 :::22                   :::*                    LISTEN      -                   
[omm@openeuler161 script]$ 

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/13208.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/13208.shtml
英文地址,請注明出處:http://en.pswp.cn/web/13208.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

前端(包含cocosCreator)開發環節調取后端接口時跨域,解決辦法之反向代理

/** eslint-disable */ var http require(http),httpProxy require(http-proxy),HttpProxyRules require(http-proxy-rules);// Set up proxy rules instance var port 9090 var proxyRules new HttpProxyRules({rules: {/api/(.*): https://baidu.com/$1, // 測試環境游戲…

自學VBA 設置單元格文字格式 筆記

一.設定對應單元格對應需要顯示的格式 Cells(1, 1).Font.Size 18 字體大小 Cells(1, 2).Font.Color RGB(255, 0, 0) 字體顏色 Cells(1, 3).Font.Name "黑體" 字體類型 Cells(1, 4).Font.Italic True 字體斜體 Cells(1, 5).Font.FontStyle "BOLD"…

ubuntu下gcc編譯器的安裝

.gcc編譯器的安裝 一般linux下是覆蓋含有的&#xff0c;如果沒有執行更新命令 sudo apt update gcc安裝成功&#xff0c;可以檢查一下版本 可以看出我的gcc是9.4.0版本的

驗證torch.nn.Conv2d

import os import cv2 import torch import numpy as np import random import cv2 as cv from matplotlib import pyplot as pltdef f_VerifyConv2D():"""驗證torch.nn.Conv2d&#xff0c; 并將輸入數據及權重保存到txt文件中"""x torch.randn…

SpringBoot環境隔離Profiles

前言 通常我們開發不可能只有一個生產環境&#xff0c;還會有其它的開發&#xff0c;測試&#xff0c;預發布環境等等。為了更好的管理每個環境的配置項&#xff0c;springboot也提供了對應的環境隔離的方法。 直接上干貨 知識點 激活環境方法 1&#xff0c;在application…

專用設備制造業供應商收發文件,有什么專業而輕便的方式嗎?

專用設備制造業的特點包括&#xff1a;門類廣、跨度大、科技含量高。它主要生產的是國民經濟各部門&#xff08;包括采掘、化工、冶煉、能源、醫療衛生、環保等&#xff09;所急需的重大成套設備&#xff0c;例如礦產資源井采及露天開采設備、大型火電、水電、核電成套設備、石…

教育行業文本短信VS視頻短信VS語音短信哪個好?

在教育行業中&#xff0c;文本短信、視頻短信和語音短信各有其優勢&#xff0c;選擇哪種方式更好取決于具體的應用場景和目標。 文本短信的優勢在于&#xff1a; 1.簡潔明了&#xff1a;能夠快速、直接地傳遞信息&#xff0c;對于需要快速通知或提醒的場景非常適用。 …

通過內網穿透免費部署我們的springboot+vue項目 實現跟服務器一樣的效果

前文講到通過內網穿透能夠實現遠程訪問個人電腦的靜態資源。本文將講解通過內網穿透實現遠程訪問本地的項目&#xff0c;實現跟部署到服務器一樣的效果&#xff1a;前文鏈接&#xff1a;通過內網穿透實現遠程訪問個人電腦資源詳細過程&#xff08;免費&#xff09;&#xff08;…

深度學習之卷積神經網絡理論基礎

深度學習之卷積神經網絡理論基礎 卷積層的操作&#xff08;Convolutional layer&#xff09; 在提出卷積層的概念之前首先引入圖像識別的特點 圖像識別的特點 特征具有局部性&#xff1a;老虎重要特征“王字”僅出現在頭部區域特征可能出現在任何位置下采樣圖像&#xff0c…

Python 小抄

Python 備忘單 目錄 1.語法和空格 2.注釋 3.數字和運算 4.字符串處理 5.列表、元組和字典 6.JSON 7.循環 8.文件處理 9.函數 10.處理日期時間 11.NumPy 12.Pandas 要運行單元格&#xff0c;請按 ShiftEnter 或單擊頁面頂部的 Run&#xff08;運行&#xff09;。 1.語法和空格…

三種方法進行跨服務器文件傳輸

今天需要在一個centOS服務器上編譯一個工具, 我的本地主機是ubuntu, 但是由于服務器是合規環境, 沒有文件傳輸的接口, 也不能訪問github等外網, 所以很多依賴只能下載到ubuntu然后在想辦法搞到服務器上. 這種場景有三種簡單有用的辦法, 整理一下. 方法一: 把主機配置成http ser…

6---Linux下版本控制器Git的知識點

一、Linux之父與Git的故事&#xff1a; Linux之父叫做“Linus Torvalds”&#xff0c;我們簡稱為雷納斯。Linux是開源項目&#xff0c;所以在Linux的早期開發中&#xff0c;許多世界各地的能力各異的程序員都參與到Linux的項目開發中。那時&#xff0c;雷納斯每天都會收到許許…

用ntpdate同步時間出現問題

1. 使用ntpdate同步 [rootnode ~]# ntpdate ntp.aliyun.com4 Aug 00:07:17 ntpdate[20924]: adjust time server 203.107.6.88 offset -0.001543 sec2. 查看時間 [rootnode ~]# date Thu Aug 4 00:07:46 CST 20223. 如果時間對不上 報錯信息 cna02:~ # ntpdate ntp1.aliyu…

mysql社區版最多支持多個連接并發

MySQL社區版對于并發連接數的支持并沒有一個固定的上限&#xff0c;它實際上取決于多個因素&#xff0c;包括服務器的硬件配置、MySQL的配置參數以及應用程序的設計等。 硬件配置&#xff1a;服務器的CPU、內存和磁盤I/O等硬件資源會直接影響MySQL可以處理的并發連接數。例如&a…

VMware Fusion 13.5.2 for Mac 發布,產品訂閱模式首個重大變更

VMware Fusion 13.5.2 for Mac 發布&#xff0c;產品訂閱模式首個重大變更 適用于基于 Intel 處理器和搭載 Apple 芯片的 Mac 的桌面虛擬化軟件 請訪問原文鏈接&#xff1a;https://sysin.org/blog/vmware-fusion-13/&#xff0c;查看最新版。原創作品&#xff0c;轉載請保留…

vue props接收組件數據(類型配置)

"props"接收的常見傳參類型有以下幾種&#xff1a;String&#xff1a;字符串類型&#xff0c;Number&#xff1a;數字類型&#xff0c;Boolean&#xff1a;布爾類型&#xff0c;Array&#xff1a;數組類型&#xff0c;Object&#xff1a;對象類型&#xff0c;Date&am…

文章解讀與仿真程序復現思路——中國電機工程學報EI\CSCD\北大核心《集裝箱海港級聯物流-能源耦合系統協同優化方法 》

本專欄欄目提供文章與程序復現思路&#xff0c;具體已有的論文與論文源程序可翻閱本博主免費的專欄欄目《論文與完整程序》 論文與完整源程序_電網論文源程序的博客-CSDN博客https://blog.csdn.net/liang674027206/category_12531414.html 電網論文源程序-CSDN博客電網論文源…

FPGA - GTX收發器-K碼 以及 IBERT IP核使用

一&#xff0c;前言 在FPGA - Xilinx系列高速收發器---GTX中詳細介紹了GTX的基礎知識&#xff0c;以及IP核的調用&#xff0c;下面將補充一下GTX在使用中的高速串行數據流在接收和發送時的控制與對齊&#xff08;K碼&#xff09;&#xff0c;以及高速接口GTX&#xff0c;如果G…

Springboot開發 -- Postman 調試 session 驗證 接口

當我們在開發Spring Boot應用時&#xff0c;經常會遇到帶有Session驗證的接口&#xff0c;這些接口需要用戶先登錄并獲取到Session ID&#xff08;或稱為cookie中的JSESSIONID&#xff09;&#xff0c;然后在后續的請求中攜帶這個Session ID來保持會話狀態。下面我將以一個實際…

力扣72-編輯距離

題目鏈接 記憶化搜索&#xff1a; 解題關鍵&#xff1a;每次僅考慮兩字符串word1、word2分別從0 - i修改成0-j下標的完全匹配(下標表示&#xff09; 臨界條件&#xff1a;當 i 或 j 小于0時&#xff0c;表示該字符串為空&#xff0c;編輯距離確定為 y1 或 x1 int dp[501][501…