postgresql自带指令命令系列二

简介

         在安装postgresql数据库的时候会需要设置一个关于postgresql数据库的PATH变量
export PATH=/home/postgres/pg/bin:$PATH,该变量会指向postgresql安装路径下的bin目录。这个安装目录和我们在进行编译的时候./configure --prefix= [指定安装目录]    中的prefix参数设置相关。--bindir=DIR  参数可以指定bin目录的具体存放路径。postgresql对应的PATH变量没有设置正确,会导致执行文件对应的命令无法使用

        本文使用postgresql-15.2版本进行讲解

bin目录


        进入到对应的bin目录中去,可以看到有以下的执行文件,本博主将进行一一讲解

clusterdb
createdb
createuser
dropdb
dropuser
ecpg
initdb
oid2name
pg_amcheck
pg_archivecleanup
pg_basebackup
pgbench
pg_checksums
pg_config
pg_controldata
pg_ctl
pg_dump
pg_dumpall
pg_isready
pg_receivewal
pg_recvlogical
pg_resetwal
pg_restore
pg_rewind
pg_test_fsync
pg_test_timing
pg_upgrade
pg_verifybackup
pg_waldump
postgres
postmaster -> postgres
psql
reindexdb
vacuumdb
vacuumlo

接上一篇 

14.pg_config

         pg_config工具打印当前安装的PostgreSQL配置参数。可以通过它找到相对应的存放目录。常常使用陌生的操作系统,安装PG找不到对应的默认路径的时候,可以使用该指令进行查找

[postgres@vm03 ~]$ pg_config --bindir --docdir --htmldir --includedir --pkgincludedir --includedir-server --libdir --pkglibdir  --localedir --mandir   --sharedir   --sysconfdir   --pgxs   --configure --cc --cppflags --cflags --cflags_sl --ldflags --ldflags_ex --ldflags_sl --libs --version           
/home/postgres/pg/bin
/home/postgres/pg/share/doc
/home/postgres/pg/share/doc
/home/postgres/pg/include
/home/postgres/pg/include
/home/postgres/pg/include/server
/home/postgres/pg/lib
/home/postgres/pg/lib
/home/postgres/pg/share/locale
/home/postgres/pg/share/man
/home/postgres/pg/share
/home/postgres/pg/etc
/home/postgres/pg/lib/pgxs/src/makefiles/pgxs.mk'--prefix=/home/postgres/pg' '--with-openssl' '--with-python'
gcc -std=gnu99
-D_GNU_SOURCE
-Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Werror=vla -Wendif-labels -Wmissing-format-attribute -Wformat-security -fno-strict-aliasing -fwrapv -fexcess-precision=standard -O2
-fPIC
-Wl,--as-needed -Wl,-rpath,'/home/postgres/pg/lib',--enable-new-dtags-lpgcommon -lpgport -lssl -lcrypto -lz -lreadline -lpthread -lrt -ldl -lm 

         这里使用官网对各个参数的介绍

--bindir
打印用户可执行文件的路径。 比如,可以用这个找psql程序。 通常这也是pg_config程序存在的路径。
--docdir
打印文档文件的位置。
--htmldir
输出HTML文档文件的位置。
--includedir
打印客户端接口C头文件的路径。
--pkgincludedir
打印其它C头文件的位置。
--includedir-server
打印那些做服务器编程时使用的C头文件的位置。
--libdir
打印目标代码库的路径。
--pkglibdir
打印动态加载的模块的位置,或者服务器在哪里寻找他们。 其它体系相关的数据文件可能也放在这个目录里。
--localedir
打印区域支持文件的位置。如果在编译PostgreSQL的时候没有配置区域支持, 那么这个就是空字符串。
--mandir
打印手册页的位置。
--sharedir
打印体系无关的支持文件的位置。
--sysconfdir
打印系统范围的配置文件位置。
--pgxs
打印扩展makefiles文件的位置。
--configure
打印配置和编译PostgreSQL时给configure脚本传递的选项, 这可以用于复制相同配置, 或者找出二进制包是用哪些选项编译的。 不过请注意二进制包通常包含供应商提供的补丁。又见下面的例子。
--cc
打印用于编译PostgreSQL的CC变量的数值。 这个选项显示使用的C编译器。
--cppflags
打印用于编译PostgreSQL的CPPFLAGS变量的数值。 这个选项显示在预处理的时候所需要的C编译器开关(通常是-I开关)。
--cflags
打印编译PostgreSQL时使用的CFLAGS变量的数值。 这个选项显示C编译器开关。
--cflags_sl
打印编译PostgreSQL时使用的CFLAGS_SL变量的数值。 这个选项显示了编译共享库的额外的C编译器开关。
--ldflags
打印编译PostgreSQL时使用的LDFLAGS变量的数值。 它显示了链接器的开关。
--ldflags_ex
输出用于创建PostgreSQL的LDFLAGS_EX变量的值。 这显示用于构建可执行文件的链接器开关。
--ldflags_sl
打印编译PostgreSQL时使用的LDFLAGS_SL变量的数值。 它显示了用于编译共享库的链接器的开关。
--libs
打印编译PostgreSQL时使用的LIBS变量的数值。 其内容通常包含连接到PostgreSQL的外部库的-l开关。
--version
打印PostgreSQL的版本。

        这么多参数中重点关注--bindir、--configure、--version 三个参数的使用。


15.pg_controldata

         这个指令只有一个-D、-V两个参数,-V用于展示该数据目录下的数据库版本号

[postgres@vm03 ~]$ pg_controldata -D $PGDATA
pg_control version number:            1300
Catalog version number:               202209061
Database system identifier:           7301665933783671493
Database cluster state:               in production
pg_control last modified:             Tue 05 Dec 2023 10:19:04 PM CST
Latest checkpoint location:           0/10000110
Latest checkpoint's REDO location:    0/100000D8
Latest checkpoint's REDO WAL file:    000000010000000000000010
Latest checkpoint's TimeLineID:       1
Latest checkpoint's PrevTimeLineID:   1
Latest checkpoint's full_page_writes: on
Latest checkpoint's NextXID:          0:743
Latest checkpoint's NextOID:          24579
Latest checkpoint's NextMultiXactId:  1
Latest checkpoint's NextMultiOffset:  0
Latest checkpoint's oldestXID:        716
Latest checkpoint's oldestXID's DB:   1
Latest checkpoint's oldestActiveXID:  743
Latest checkpoint's oldestMultiXid:   1
Latest checkpoint's oldestMulti's DB: 1
Latest checkpoint's oldestCommitTsXid:0
Latest checkpoint's newestCommitTsXid:0
Time of latest checkpoint:            Tue 05 Dec 2023 10:19:04 PM CST
Fake LSN counter for unlogged rels:   0/3E8
Minimum recovery ending location:     0/0
Min recovery ending loc's timeline:   0
Backup start location:                0/0
Backup end location:                  0/0
End-of-backup record required:        no
wal_level setting:                    replica
wal_log_hints setting:                off
max_connections setting:              100
max_worker_processes setting:         8
max_wal_senders setting:              10
max_prepared_xacts setting:           0
max_locks_per_xact setting:           64
track_commit_timestamp setting:       off
Maximum data alignment:               8
Database block size:                  8192
Blocks per segment of large relation: 131072
WAL block size:                       8192
Bytes per WAL segment:                16777216
Maximum length of identifiers:        64
Maximum columns in an index:          32
Maximum size of a TOAST chunk:        1996
Size of a large-object chunk:         2048
Date/time type storage:               64-bit integers
Float8 argument passing:              by value
Data page checksum version:           0
Mock authentication nonce:            5857108a733c77131802904df8eebd6b2215639ba0b3dd8b53f78fc6446e6588

        pg_controldata打印关于预写式日志和检查点处理的信息。这种信息是集簇范围的,并且不针对任何一个数据库。

        这个工具只能由初始化集簇的用户运行,因为它要求对数据目录的读访问。你可以在命令行中指定数据目录,

关于以上参数的解释(这个能看得懂就看吧,后期再专门写一篇博客来讲讲这些参数吧)

pg_control version number:该字段表示 pg_control 文件的版本号,本例中为 1300。
Catalog version number:数据库目录的版本号,本例中为 202209061。
Database system identifier:数据库系统标识符,用于唯一标识数据库集群。本例中为 7301665933783671493。
Database cluster state:数据库集群的状态,本例中为 "in production",表示数据库正处于主库状态。
pg_control last modified:pg_control 文件上次修改的时间,本例中为 "Tue 05 Dec 2023 10:19:04 PM CST"。
Latest checkpoint location:最新检查点的位置,本例中为 "0/10000110"。
Latest checkpoint's REDO location:最新检查点的REDO位置,本例中为 "0/100000D8"。
Latest checkpoint's REDO WAL file:最新检查点的REDO WAL文件,本例中为 "000000010000000000000010"。
Latest checkpoint's TimeLineID:最新检查点所在的时间线标识符,本例中为 1。
Latest checkpoint's PrevTimeLineID:最新检查点的前一个时间线标识符,本例中为 1。
Latest checkpoint's full_page_writes:最新检查点是否使用了完整页写入(on 表示启用,off 表示禁用),本例中为 "on"。
Latest checkpoint's NextXID:下一个事务ID(XID),本例中为 "0:743"。
Latest checkpoint's NextOID:下一个对象ID(OID),本例中为 24579。
Latest checkpoint's NextMultiXactId:下一个多重事务ID(MultiXactId),本例中为 1。
Latest checkpoint's NextMultiOffset:下一个多重事务的偏移量,本例中为 0。
Latest checkpoint's oldestXID:最老的活动事务ID,本例中为 716。
Latest checkpoint's oldestXID's DB:最老的活动事务ID所属的数据库ID,本例中为 1。
Latest checkpoint's oldestActiveXID:最老的活动事务ID,本例中为 743。
Latest checkpoint's oldestMultiXid:最老的多重事务ID,本例中为 1。
Latest checkpoint's oldestMulti's DB:最老的多重事务ID所属的数据库ID,本例中为 1。
Latest checkpoint's oldestCommitTsXid:最老的提交时间戳事务ID,本例中为 0。
Latest checkpoint's newestCommitTsXid:最新的提交时间戳事务ID,本例中为 0。
Time of latest checkpoint:最新检查点的时间,本例中为 "Tue 05 Dec 2023 10:19:04 PM CST"。
Fake LSN counter for unlogged rels:未记录关系的虚拟LSN计数器,本例中为 "0/3E8"。
Minimum recovery ending location:最小恢复结束位置,本例中为 "0/0"。
Min recovery ending loc's timeline:最小恢复结束位置所在的时间线标识符,本例中为 0。
Backup start location:备份开始位置,本例中为 "0/0"。
Backup end location:备份结束位置,本例中为 "0/0"。
End-of-backup record required:是否需要结束备份记录("no" 表示不需要),本例中为 "no"。
wal_level setting:WAL(Write-Ahead Logging)级别设置,本例中为 "replica"。
wal_log_hints setting:是否启用WAL日志提示,本例中为 "off"。
max_connections setting:允许的最大连接数,本例中为 100。
max_worker_processes setting:允许的最大工作进程数,本例中为 8。
max_wal_senders setting:允许的最大WAL发送者数,本例中为 10。
max_prepared_xacts setting:允许的最大预备事务数,本例中为 0。
max_locks_per_xact setting:每个事务允许的最大锁数,本例中为 64。
track_commit_timestamp setting:是否启用事务提交时间戳跟踪,本例中为 "off"。
Maximum data alignment:最大数据对齐字节数,本例中为 8。
Database block size:数据库块大小,本例中为 8192 字节。
Blocks per segment of large relation:大型关系每个段的块数,本例中为 131072。
WAL block size:WAL块大小,本例中为 8192 字节。
Bytes per WAL segment:每个WAL段的字节数,本例中为 16777216 字节。
Maximum length of identifiers:标识符的最大长度,本例中为 64。
Maximum columns in an index:索引中的最大列数,本例中为 32。
Maximum size of a TOAST chunk:TOAST块的最大大小,本例中为 1996 字节。
Size of a large-object chunk:大对象块的大小,本例中为 2048 字节。
Date/time type storage:日期/时间类型的存储方式,本例中为 "64-bit integers"。
Float8 argument passing:Float8参数传递方式,本例中为 "by value"。
Data page checksum version:数据页校验和版本,本例中为 0。
Mock authentication nonce:模拟身份验证的随机数,本例中为 "5857108a733c77131802904df8eebd6b2215639ba0b3dd8b53f78fc6446e6588"


16.pg_ctl

         

pg_ctl is a utility to initialize, start, stop, or control a PostgreSQL server.Usage:pg_ctl init[db]   [-D DATADIR] [-s] [-o OPTIONS]pg_ctl start      [-D DATADIR] [-l FILENAME] [-W] [-t SECS] [-s][-o OPTIONS] [-p PATH] [-c]pg_ctl stop       [-D DATADIR] [-m SHUTDOWN-MODE] [-W] [-t SECS] [-s]pg_ctl restart    [-D DATADIR] [-m SHUTDOWN-MODE] [-W] [-t SECS] [-s][-o OPTIONS] [-c]pg_ctl reload     [-D DATADIR] [-s]pg_ctl status     [-D DATADIR]pg_ctl promote    [-D DATADIR] [-W] [-t SECS] [-s]pg_ctl logrotate  [-D DATADIR] [-s]pg_ctl kill       SIGNALNAME PIDCommon options:-D, --pgdata=DATADIR   location of the database storage area-s, --silent           only print errors, no informational messages-t, --timeout=SECS     seconds to wait when using -w option-V, --version          output version information, then exit-w, --wait             wait until operation completes (default)-W, --no-wait          do not wait until operation completes-?, --help             show this help, then exit
If the -D option is omitted, the environment variable PGDATA is used.Options for start or restart:-c, --core-files       allow postgres to produce core files-l, --log=FILENAME     write (or append) server log to FILENAME-o, --options=OPTIONS  command line options to pass to postgres(PostgreSQL server executable) or initdb-p PATH-TO-POSTGRES    normally not necessaryOptions for stop or restart:-m, --mode=MODE        MODE can be "smart", "fast", or "immediate"Shutdown modes are:smart       quit after all clients have disconnectedfast        quit directly, with proper shutdown (default)immediate   quit without complete shutdown; will lead to recovery on restartAllowed signal names for kill:ABRT HUP INT KILL QUIT TERM USR1 USR2

         这个指令是我们比较常用的一个命令 

        

启动 PostgreSQL 服务器:
pg_ctl start 指定数据目录和配置文件启动:
pg_ctl start -D /path/to/data/directory -o "-c config_file=/path/to/postgresql.conf"停止 PostgreSQL 服务器:
pg_ctl stop指定停止超时时间
pg_ctl stop -t 60重载配置文件:
pg_ctl reload指定日志文件输出路径:
pg_ctl start -l /path/to/logfile.log等待服务器启动后返回:
pg_ctl start -w使用 smart 选项启动 PostgreSQL 服务器:
(使用 smart 选项表示允许在尝试 fast 关闭失败时使用 immediate 关闭immediate 选项表示立即停止 PostgreSQL 服务器,不管当前有多少活动的连接。)
pg_ctl start -m smart使用 logrotate 选项执行日志轮换:
pg_ctl logrotate
这个命令触发 PostgreSQL 日志的轮换,创建一个新的日志文件。它与服务器的启动和运行无关。使用 kill 选项终止 PostgreSQL 服务器进程:
pg_ctl kill -s SIGTERM
使用 kill 选项可以向 PostgreSQL 服务器发送信号,上述示例发送 SIGTERM 信号,通常用于优雅地终止服务器进程。使用 promote 选项将 PostgreSQL 流复制服务器升级为主服务器:
pg_ctl promote
使用 promote 选项将 PostgreSQL 流复制服务器升级为主服务器。这在流复制设置中很常见,用于手动切换到主服务器。

        这里讲一下关于pg_ctl启停的三个参数 smart    、 fast (默认)   、 immediate

        在实际应用中,通常会优先选择 fast 选项,因为它允许服务器正常关闭,等待现有连接完成,从而最大程度地减少潜在的数据丢失。smart 则提供了一种更灵活的选择,允许在一定时间内尝试 fast 关闭,然后转为 immediate 关闭以确保服务器能够尽快停止。 


17.pg_dump 

18.pg_dumpall

 23.pg_restore

        以上三种工具pg_dump、pg_dumpall数据库得备份工具 ,pg_dumpall可以用实例级别得备份,常常联合pg_restore联合使用,将备份数据导入到另一个库中去,用于备份或数据库升级。使用范例见


19.pg_isready

         pg_isready是检查PostgreSQL 数据库服务器连接状态的一个实用工具。退出状态说明连接检查的结果。常用于新建的数据库对外开放情况。

[postgres@vm05 ~]$ pg_isready -h 192.168.43.216
192.168.43.216:5432 - no response

20.pg_receivewal

        这个指令会通过流复制的形式向远程服务器接收当前日期往后的日志信息。可以理解为相当于就是一个归档程序。可以将预写日志归档到其他服务器上,用于后期的日志恢复(PITR)。

        第一次使用的时候,他会从主节点罪行的wal开始复制,后续继续启动该命令时,他会从当前接收路径下的确实的wal去主节点找。使用起来比较简单。

pg_receivewal receives PostgreSQL streaming write-ahead logs.Usage:pg_receivewal [OPTION]...Options:-D, --directory=DIR    receive write-ahead log files into this directory-E, --endpos=LSN       exit after receiving the specified LSN--if-not-exists    do not error if slot already exists when creating a slot-n, --no-loop          do not loop on connection lost--no-sync          do not wait for changes to be written safely to disk-s, --status-interval=SECStime between status packets sent to server (default: 10)-S, --slot=SLOTNAME    replication slot to use--synchronous      flush write-ahead log immediately after writing-v, --verbose          output verbose messages-V, --version          output version information, then exit-Z, --compress=METHOD[:DETAIL]compress as specified-?, --help             show this help, then exitConnection options:-d, --dbname=CONNSTR   connection string-h, --host=HOSTNAME    database server host or socket directory-p, --port=PORT        database server port number-U, --username=NAME    connect as specified database user-w, --no-password      never prompt for password-W, --password         force password prompt (should happen automatically)Optional actions:--create-slot      create a new replication slot (for the slot's name see --slot)--drop-slot        drop the replication slot (for the slot's name see --slot)

               


21.pg_recvlogical

        pg_recvlogical控制逻辑解码复制槽以及来自这种复制槽的流数据。

        这个指令没太大应用场景。


22.pg_resetwal         

         通常用于修复由于 WAL 文件损坏或丢失而导致的数据库无法启动的问题。这个指令被认为是修复postgresql的最后一根稻草

pg_resetwal -D /var/lib/pgsql/data ##当数据库B点上预写日志损坏了,此时通过这个指令让数据库从B点前一个LSN(可应用的)重新生成预写日志,此时预写日志不再进入pg_wal目录,而是进入/var/lib/pgsql/data 路径下

24.pg_rewind

         一个增量备份工具,往往数据库比较大的时候,重新进行备份会浪费较长时间,应用旧的备份,进行增量备份到指定节点,会比较快。使用范例见


25.pg_test_fsync

         这是一个系统压测工具,使用也非常简单。它主要用于评估文件系统的 fsync(文件同步)性能。

测试 fsync 性能:
pg_test_fsync指定测试文件大小:
pg_test_fsync -s 1GB测试异步操作:
pg_test_fsync -A多次运行测试:
pg_test_fsync -t 10显示执行一系列同步操作的时间。


26.pg_test_timing

        pg_test_timing 的输出将显示执行计时操作的时间,包括系统计时和延迟。这对于评估 PostgreSQL 在特定硬件和系统上的性能和延迟表现非常有用。收集计时数据很慢的系统会给出不太准确的EXPLAIN ANALYZE结果。

        使用非常简单,只有一个参数d,用于指定压测的持续时间

  1. Testing timing overhead for 10 seconds:

    • 这行指示测试计时的总时间为10秒。
  2. Per loop time including overhead: 30.91 ns:

    • 每个循环的平均时间,包括测试系统计时的额外开销,为30.91纳秒。这表示每次循环执行所需的平均时间。
< us:
表示计时持续时间的范围,单位是微秒。这一列显示了计时的持续时间范围的上限。例如,< us 列中的 "1" 表示小于1微秒的计时。% of total:
表示每个时间段的百分比,占总计数的比例。这一列显示了每个持续时间范围内计时的分布情况。例如,"% of total" 列中的 "97.04" 表示小于1微秒的计时占总计数的97.04%。count:
表示每个时间段的计数,即在指定的持续时间范围内计时的次数。这一列显示了每个时间段的计数。例如,"count" 列中的 "313986794" 表示小于1微秒的计时出现了313,986,794次。综合这三列的信息,可以了解计时的分布情况,例如有多少计时在特定的时间范围内。在给定的示例中,绝大多数计时小于1微秒,占总计数的97.04%。这样的结果通常是希望看到的,因为它表示系统的计时性能较好,大多数计时都非常快速。

 
27.pg_upgrade

        用数据库版本升级的工具,使用范例见 

       

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

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

相关文章

跨境电商运营常用的ChatGPT通用提示词模板

市场分析&#xff1a;如何分析目标市场&#xff1f; 选品策略&#xff1a;如何选择要销售的商品&#xff1f; 供应链管理&#xff1a;如何管理供应链&#xff1f; 物流解决方案&#xff1a;如何选择合适的物流解决方案&#xff1f; 跨国支付&#xff1a;如何处理跨国支付&a…

labelimg遇到的标签修改问题:修改一张图像的标签时,保存后导致classes.txt改变

问题描述&#xff1a;修改一张图像的标签时候&#xff0c; classes.txt 会同步更新&#xff0c;导致重新生成了 classes.txt 但是这个 classes.txt 只有你现在写的那个类别名&#xff0c;以前的没有了。 解决&#xff1a;设置一个 predefined_classes.txt&#xff0c;内容和模…

Metasploit渗透测试的漏洞利用和攻击方法

预计更新 第一章 Metasploit的使用和配置 1.1 安装和配置Metasploit 1.2 Metasploit的基础命令和选项 1.3 高级选项和配置 第二章 渗透测试的漏洞利用和攻击方法 1.1 渗透测试中常见的漏洞类型和利用方法 1.2 Metasploit的漏洞利用模块和选项 1.3 模块编写和自定义 第三章 Me…

基于ssm理发店会员管理系统的设计和实现论文

摘 要 网络技术和计算机技术发展至今&#xff0c;已经拥有了深厚的理论基础&#xff0c;并在现实中进行了充分运用&#xff0c;尤其是基于计算机运行的软件更是受到各界的关注。加上现在人们已经步入信息时代&#xff0c;所以对于信息的宣传和管理就很关键。因此理发店会员信息…

Cache的基本概念和原理

目录 一. Cache的工作原理二. 局部性原理三. 性能分析四. 待解决的问题 \quad 一. Cache的工作原理 \quad 存储系统存在的问题 虽然双端口RAM、多模块存储器提高存储器的工作速度, 但是优化后的速度与CPU差距依然很大, 为了改善这个问题就出现了Cache, 来解决存储器与CPU速度不…

创作活动(五十一)———编程中常见的技术难题有哪些?

#编程中常见的技术难题有哪些&#xff1f;# 编程世界里的三大谜题&#xff1a;bug、性能优化与跨平台兼容性 每个职业都有其固有的挑战和困难&#xff0c;对于程序员来说&#xff0c;这些困难往往来自于技术本身。编程&#xff0c;就像是一个充满谜题的世界&#xff0c;而程序…

大屏适配方案二——vw和vh

按照设计稿的尺寸&#xff0c;将px按比例计算转为vw和vh&#xff0c;转换公式如下 假设设计稿尺寸为 1920*1080&#xff08;做之前一定问清楚 ui 设计稿的尺寸&#xff09;即&#xff1a; 网页宽度1920px 网页高度1080px我们都知道 网页宽度100vw 网页宽度100vh所以&#xff0…

ubuntu安装docker及docker常用命令

docker里有三个部分 daemon 镜像 和 容器 我们需要了解的概念 容器 镜像 数据卷 文章目录 docker命令docker镜像相关命令docker容器相关命令数据卷ubuntu安装docker docker命令 #启动&#xff0c;停止&#xff0c;重启docker systemctl start docker systemctl stop docker s…

SpringBoot的依赖管理和自动配置

与其明天开始&#xff0c;不如现在行动&#xff01; 文章目录 1 依赖管理机制2 自动配置机制2.1 初步理解2.2 完整流程 &#x1f48e;总结 1 依赖管理机制 为什么导入starter-web后所有相关依赖都会导入进来&#xff1f; 开发什么场景&#xff0c;导入什么场景启动器-spring-bo…

vscode调试pytorch分布式训练

launch.json文件如下"cwd" "${fileDirname}"表示代码调试的根目录是当前你调试的文件&#xff0c;也就是pretrain.py所在的目录。其他路径参数都是相对这个目录的 如果改成"cwd" "${workspaceFolder}" 表示代码调试的根目录是打开的工…

【Python百宝箱】构筑铜墙铁壁:Python 认证与授权库实战指南

Python认证与授权&#xff1a;构建安全、可扩展的应用 前言 在当今数字化时代&#xff0c;用户认证和授权是构建安全、可信任的应用程序的基石。Python生态系统提供了丰富而强大的库和工具&#xff0c;以支持多种身份验证和授权方案。本文将深入探讨一系列Python库&#xff0…

MyBatis框架中的5种设计模式总结

前言 MyBatis框架中使用的5种设计模式分别是&#xff1a;1、建造者模式&#xff08;生成器模式&#xff09;。2、工厂模式。3、单例模式。4、代理模式。5、适配器模式。 1、建造者模式&#xff08;生成器模式&#xff09; 在MyBatis环境的初始化过程中&#xff0c;SqlSessio…

Redis 环境搭建2

文章目录 第2关&#xff1a;使用 Redis 第2关&#xff1a;使用 Redis 本文是接着上篇文章写的第二关代码&#xff0c;部分人再进入第二关时不会保留第一关的配置的环境&#xff0c;可以通过下面一句代码进行检验。 redis-cli -p 7001 -c如果进入到了redis界面就是有环境&…

问题:batchnormal训练单个batch_size就会报错吗

Batch Normalization&#xff08;批标准化&#xff09;是一种深度学习中的正则化技巧&#xff0c;它可以改进网络的训练过程。在训练神经网络时&#xff0c;Batch Normalization可以帮助解决内部协变量偏移&#xff08;Internal Covariate Shift&#xff09;的问题。 在标准的…

pytorch serve开始-Getting started

官网链接 Getting started — PyTorch/Serve master documentation 安装TorchServe和torch-model-archiver 安装依赖 注意::对于Conda&#xff0c;运行Torchserve需要Python >3.8。 对于基于Debian的系统/ MacOS CPU python ./ts_scripts/install_dependencies.py 对…

【Hadoop】高可用集群搭建

知识目录 一、写在前面&#x1f495;二、Zookeeper安装✨三、Hadoop配置✨四、Hadoop HA自动模式✨五、HA脚本分享✨七、结语&#x1f495; 一、写在前面&#x1f495; 大家好&#xff01;这篇文章是我在搭建Hdfs的HA(高可用)时写下的详细笔记与感想&#xff0c;希望能帮助到大…

Notes数据直接在Excel中统计

大家好&#xff0c;才是真的好。 我希望你看过前面两篇内容《Domino REST API安装和运行》和《Domino REST API安装和运行》&#xff0c;因为今天我们正是使用REST API方式在Excel中查询和统计Notes数据。 不过首先你得知道一个OData协议&#xff0c;全名Open Data Protocol(…

五花八门客户问题(BUG) - 用好strace2

目录 前言 strace与gdb的冲突 细看strace 前言 上文通过strace trace它自个看到了strace的原理:确实是调用了ptrace函数实现的。今天我们再细看一看。 strace与gdb的冲突 既然它两底层都是用ptrace,那么一定不能同时用在同一个进程上。实例验证: [root]# strace sleep…

布隆过滤器,Redis之 bitmap,场景题【如果微博某个大V发了一条消息,怎么统计有多少人看过了】

文章目录 一、什么是 bitmap1-1、Bitmap 相关命令二、bitmap 和 set 对比2-1、数据准备2-2、内存对比2-3、性能对比三、布隆过滤器3-1、理论主要作用如何将数据放到过滤器内呢?注意事项布隆过滤器 有两个重要的参数3-2、代码实现3-3、Java中的hash函数最近面试,面试官问了一个…

Windows系统Java开发环境安装

总结一下Java软件开发工程师常见的环境的安装&#xff0c;仅限Windows环境。 以下下载链接均来自官网&#xff0c;网络条件自己克服。 目录 1. JDKJDK Oracle 官网下载地址配置系统环境变量 2. Mavenapache maven 官网地址本地仓库和中央仓库配置配置系统环境变量 3. GitGit 官…