在龙蜥 anolis os 23 上 源码安装 PostgreSQL 16.1

news2024/12/25 9:23:15

在龙蜥 OS 23上,本来想使用二进制安装,结果发现没有针对龙蜥的列表:

于是想到了源码安装,下面我们列出了PG源码安装的步骤:

1.安装准备

1.1.创建操作系统组及用户

groupadd postgres

useradd -g postgres -m postgres

1.2.建立目录

[root@dbserver1 ~]# mkdir -p /postgresql/{pgdata,pg16,soft}

[root@dbserver1 ~]# chown -R postgres:postgres /postgresql

[root@dbserver1 ~]# chmod -R 775 /postgresql

1.3.下载软件

下载软件

https://ftp.postgresql.org/pub/source/v16.1/postgresql-16.1.tar.gz

PostgreSQL: File Browser

[root@dbserver1 ~]# cd /postgresql/soft

[root@dbserver1 soft]# pwd

/postgresql/soft

[root@dbserver1 soft]# ls -ltr

total 0

[root@dbserver1 soft]# wget https://ftp.postgresql.org/pub/source/v16.1/postgresql-16.1.tar.gz

1.4.安装依赖包

使用yum安装,更简单

yum install -y cmake make gcc zlib zlib-devel gcc-c++ perl readline readline-devel  \

 python36 tcl openssl ncurses-devel openldap pam flex

2.源码安装

2.1.解压

[root@dbserver1 soft]# ls -ltr

total 31676

-rw-r--r--. 1 root root 32433767 Nov  7 06:19 postgresql-16.1.tar.gz

[root@dbserver1 soft]#

[root@dbserver1 soft]# tar xvzf postgresql-16.1.tar.gz

[root@dbserver1 soft]# cd postgresql-16.1/

[root@dbserver1 postgresql-16.1]# pwd

/postgresql/soft/postgresql-16.1

[root@dbserver1 postgresql-16.1]# ls -ltr

total 872

-rw-r--r--.  1 1107 1107   1213 Nov  7 06:04 README

-rw-r--r--.  1 1107 1107   6266 Nov  7 06:04 meson_options.txt

-rw-r--r--.  1 1107 1107   1875 Nov  7 06:04 Makefile

-rw-r--r--.  1 1107 1107    277 Nov  7 06:04 HISTORY

-rw-r--r--.  1 1107 1107   4288 Nov  7 06:04 GNUmakefile.in

-rw-r--r--.  1 1107 1107   1192 Nov  7 06:04 COPYRIGHT

-rw-r--r--.  1 1107 1107  87292 Nov  7 06:04 configure.ac

-rwxr-xr-x.  1 1107 1107 584560 Nov  7 06:04 configure

-rw-r--r--.  1 1107 1107    365 Nov  7 06:04 aclocal.m4

-rw-r--r--.  1 1107 1107 102017 Nov  7 06:17 meson.build

drwxrwxrwx. 61 1107 1107   4096 Nov  7 06:17 contrib

drwxrwxrwx.  2 1107 1107   4096 Nov  7 06:17 config

drwxrwxrwx.  3 1107 1107     87 Nov  7 06:17 doc

-rw-r--r--.  1 1107 1107  64601 Nov  7 06:18 INSTALL

drwxrwxrwx. 16 1107 1107   4096 Nov  7 06:18 src

[root@dbserver1 postgresql-16.1]#

2.2 配置

[root@dbserver1 postgresql-16.1]# ./configure --prefix=/postgresql/pg16

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

[root@dbserver1 postgresql-16.1]# ./configure --prefix=/postgresql/pg16

checking build system type... x86_64-pc-linux-gnu

checking host system type... x86_64-pc-linux-gnu

checking which template to use... linux

checking whether NLS is wanted... no

checking for default port number... 5432

checking for block size... 8kB

checking for segment size... 1GB

checking for WAL block size... 8kB

checking for gcc... gcc

checking whether the C compiler works... yes

checking for C compiler default output file name... a.out

checking for suffix of executables...

checking whether we are cross compiling... no

checking for suffix of object files... o

checking whether we are using the GNU C compiler... yes

checking whether gcc accepts -g... yes

checking for gcc option to accept ISO C89... none needed

checking for gcc option to accept ISO C99... none needed

checking for g++... g++

checking whether we are using the GNU C++ compiler... yes

checking whether g++ accepts -g... yes

checking for gawk... gawk

checking whether gcc supports -Wdeclaration-after-statement, for CFLAGS... yes

checking whether gcc supports -Werror=vla, for CFLAGS... yes

checking whether gcc supports -Werror=unguarded-availability-new, for CFLAGS... no

checking whether g++ supports -Werror=unguarded-availability-new, for CXXFLAGS... no

checking whether gcc supports -Wendif-labels, for CFLAGS... yes

checking whether g++ supports -Wendif-labels, for CXXFLAGS... yes

checking whether gcc supports -Wmissing-format-attribute, for CFLAGS... yes

checking whether g++ supports -Wmissing-format-attribute, for CXXFLAGS... yes

checking whether gcc supports -Wimplicit-fallthrough=3, for CFLAGS... yes

checking whether g++ supports -Wimplicit-fallthrough=3, for CXXFLAGS... yes

checking whether gcc supports -Wcast-function-type, for CFLAGS... yes

checking whether g++ supports -Wcast-function-type, for CXXFLAGS... yes

checking whether gcc supports -Wshadow=compatible-local, for CFLAGS... yes

checking whether g++ supports -Wshadow=compatible-local, for CXXFLAGS... yes

checking whether gcc supports -Wformat-security, for CFLAGS... yes

checking whether g++ supports -Wformat-security, for CXXFLAGS... yes

checking whether gcc supports -fno-strict-aliasing, for CFLAGS... yes

checking whether g++ supports -fno-strict-aliasing, for CXXFLAGS... yes

checking whether gcc supports -fwrapv, for CFLAGS... yes

checking whether g++ supports -fwrapv, for CXXFLAGS... yes

checking whether gcc supports -fexcess-precision=standard, for CFLAGS... yes

checking whether g++ supports -fexcess-precision=standard, for CXXFLAGS... no

checking whether gcc supports -funroll-loops, for CFLAGS_UNROLL_LOOPS... yes

checking whether gcc supports -ftree-vectorize, for CFLAGS_VECTORIZE... yes

checking whether gcc supports -Wunused-command-line-argument, for NOT_THE_CFLAGS... no

checking whether gcc supports -Wcompound-token-split-by-macro, for NOT_THE_CFLAGS... no

checking whether gcc supports -Wformat-truncation, for NOT_THE_CFLAGS... yes

checking whether gcc supports -Wstringop-truncation, for NOT_THE_CFLAGS... yes

checking whether gcc supports -Wcast-function-type-strict, for NOT_THE_CFLAGS... no

checking whether gcc supports -fvisibility=hidden, for CFLAGS_SL_MODULE... yes

checking whether g++ supports -fvisibility=hidden, for CXXFLAGS_SL_MODULE... yes

checking whether g++ supports -fvisibility-inlines-hidden, for CXXFLAGS_SL_MODULE... yes

checking whether the C compiler still works... yes

checking how to run the C preprocessor... gcc -E

checking for pkg-config... /usr/bin/pkg-config

checking pkg-config is at least version 0.9.0... yes

checking allow thread-safe client libraries... yes

checking whether to build with ICU support... yes

checking for icu-uc icu-i18n... yes

checking whether to build with Tcl... no

checking whether to build Perl modules... no

checking whether to build Python modules... no

checking whether to build with GSSAPI support... no

checking whether to build with PAM support... no

checking whether to build with BSD Authentication support... no

checking whether to build with LDAP support... no

checking whether to build with Bonjour support... no

checking whether to build with SELinux support... no

checking whether to build with systemd support... no

checking whether to build with XML support... no

checking whether to build with LZ4 support... no

checking whether to build with ZSTD support... no

checking for strip... strip

checking whether it is possible to strip libraries... yes

checking for ar... ar

checking for a BSD-compatible install... /usr/bin/install -c

checking for tar... /usr/bin/tar

checking whether ln -s works... yes

checking for a thread-safe mkdir -p... /usr/bin/mkdir -p

checking for bison... no

configure: WARNING:

*** Without Bison you will not be able to build PostgreSQL from Git nor

*** change any of the parser definition files.  You can obtain Bison from

*** a GNU mirror site.  (If you are using the official distribution of

*** PostgreSQL then you do not need to worry about this, because the Bison

*** output is pre-generated.)

checking for flex... /usr/bin/flex

configure: using flex 2.6.4

checking for perl... /usr/bin/perl

configure: using perl 5.36.0

checking for a sed that does not truncate output... /usr/bin/sed

checking for grep that handles long lines and -e... /usr/bin/grep

checking for egrep... /usr/bin/grep -E

checking for ANSI C header files... yes

checking for sys/types.h... yes

checking for sys/stat.h... yes

checking for stdlib.h... yes

checking for string.h... yes

checking for memory.h... yes

checking for strings.h... yes

checking for inttypes.h... yes

checking for stdint.h... yes

checking for unistd.h... yes

checking whether gcc is Clang... no

checking whether pthreads work with -pthread... yes

checking for joinable pthread attribute... PTHREAD_CREATE_JOINABLE

checking whether more special flags are required for pthreads... no

checking for PTHREAD_PRIO_INHERIT... yes

checking pthread.h usability... yes

checking pthread.h presence... yes

checking for pthread.h... yes

checking for strerror_r... yes

checking whether strerror_r returns int... no

checking for main in -lm... yes

checking for library containing setproctitle... no

checking for library containing dlsym... none required

checking for library containing socket... none required

checking for library containing getopt_long... none required

checking for library containing shm_open... none required

checking for library containing shm_unlink... none required

checking for library containing clock_gettime... none required

checking for library containing fdatasync... none required

checking for library containing shmget... none required

checking for library containing backtrace_symbols... none required

checking for library containing pthread_barrier_wait... none required

checking for library containing readline... -lreadline

checking for inflate in -lz... yes

checking for stdbool.h that conforms to C99... yes

checking for _Bool... yes

checking atomic.h usability... no

checking atomic.h presence... no

checking for atomic.h... no

checking copyfile.h usability... no

checking copyfile.h presence... no

checking for copyfile.h... no

checking execinfo.h usability... yes

checking execinfo.h presence... yes

checking for execinfo.h... yes

checking getopt.h usability... yes

checking getopt.h presence... yes

checking for getopt.h... yes

checking ifaddrs.h usability... yes

checking ifaddrs.h presence... yes

checking for ifaddrs.h... yes

checking langinfo.h usability... yes

checking langinfo.h presence... yes

checking for langinfo.h... yes

checking mbarrier.h usability... no

checking mbarrier.h presence... no

checking for mbarrier.h... no

checking sys/epoll.h usability... yes

checking sys/epoll.h presence... yes

checking for sys/epoll.h... yes

checking sys/event.h usability... no

checking sys/event.h presence... no

checking for sys/event.h... no

checking sys/personality.h usability... yes

checking sys/personality.h presence... yes

checking for sys/personality.h... yes

checking sys/prctl.h usability... yes

checking sys/prctl.h presence... yes

checking for sys/prctl.h... yes

checking sys/procctl.h usability... no

checking sys/procctl.h presence... no

checking for sys/procctl.h... no

checking sys/signalfd.h usability... yes

checking sys/signalfd.h presence... yes

checking for sys/signalfd.h... yes

checking sys/ucred.h usability... no

checking sys/ucred.h presence... no

checking for sys/ucred.h... no

checking termios.h usability... yes

checking termios.h presence... yes

checking for termios.h... yes

checking ucred.h usability... no

checking ucred.h presence... no

checking for ucred.h... no

checking readline/readline.h usability... yes

checking readline/readline.h presence... yes

checking for readline/readline.h... yes

checking readline/history.h usability... yes

checking readline/history.h presence... yes

checking for readline/history.h... yes

checking zlib.h usability... yes

checking zlib.h presence... yes

checking for zlib.h... yes

checking for lz4... no

checking for zstd... /usr/bin/zstd

checking for openssl... /usr/bin/openssl

configure: using openssl: OpenSSL 3.0.12 24 Oct 2023 (Library: OpenSSL 3.0.12 24 Oct 2023)

checking whether byte ordering is bigendian... no

checking for inline... inline

checking for printf format archetype... gnu_printf

checking for _Static_assert... yes

checking for typeof... typeof

checking for __builtin_types_compatible_p... yes

checking for __builtin_constant_p... yes

checking for __builtin_unreachable... yes

checking for computed goto support... yes

checking for struct tm.tm_zone... yes

checking for union semun... no

checking for socklen_t... yes

checking for struct sockaddr.sa_len... no

checking for locale_t... yes

checking for C/C++ restrict keyword... __restrict

checking for struct option... yes

checking for z_streamp... yes

checking whether assembler supports x86_64 popcntq... yes

checking for special C compiler options needed for large files... no

checking for _FILE_OFFSET_BITS value needed for large files... no

checking size of off_t... 8

checking size of bool... 1

checking for int timezone... yes

checking for wcstombs_l declaration... no

checking for backtrace_symbols... yes

checking for copyfile... no

checking for getifaddrs... yes

checking for getpeerucred... no

checking for inet_pton... yes

checking for kqueue... no

checking for mbstowcs_l... no

checking for memset_s... no

checking for posix_fallocate... yes

checking for ppoll... yes

checking for pthread_is_threaded_np... no

checking for setproctitle... no

checking for setproctitle_fast... no

checking for strchrnul... yes

checking for strsignal... yes

checking for syncfs... yes

checking for sync_file_range... yes

checking for uselocale... yes

checking for wcstombs_l... no

checking for __builtin_bswap16... yes

checking for __builtin_bswap32... yes

checking for __builtin_bswap64... yes

checking for __builtin_clz... yes

checking for __builtin_ctz... yes

checking for __builtin_popcount... yes

checking for __builtin_frame_address... yes

checking for _LARGEFILE_SOURCE value needed for large files... no

checking how gcc reports undeclared, standard C functions... error

checking for posix_fadvise... yes

checking whether posix_fadvise is declared... yes

checking whether fdatasync is declared... yes

checking whether strlcat is declared... no

checking whether strlcpy is declared... no

checking whether strnlen is declared... yes

checking whether preadv is declared... yes

checking whether pwritev is declared... yes

checking whether F_FULLFSYNC is declared... no

checking for explicit_bzero... yes

checking for getopt... yes

checking for getpeereid... no

checking for inet_aton... yes

checking for mkdtemp... yes

checking for strlcat... no

checking for strlcpy... no

checking for strnlen... yes

checking for pthread_barrier_wait... yes

checking for getopt_long... yes

checking for syslog... yes

checking syslog.h usability... yes

checking syslog.h presence... yes

checking for syslog.h... yes

checking for opterr... yes

checking for optreset... no

checking unicode/ucol.h usability... yes

checking unicode/ucol.h presence... yes

checking for unicode/ucol.h... yes

checking for rl_completion_suppress_quote... yes

checking for rl_filename_quote_characters... yes

checking for rl_filename_quoting_function... yes

checking for append_history... yes

checking for history_truncate_file... yes

checking for rl_completion_matches... yes

checking for rl_filename_completion_function... yes

checking for rl_reset_screen_size... yes

checking for rl_variable_bind... yes

checking test program... ok

checking whether long int is 64 bits... yes

checking for __builtin_mul_overflow... yes

checking size of void *... 8

checking size of size_t... 8

checking size of long... 8

checking alignment of short... 2

checking alignment of int... 4

checking alignment of long... 8

checking alignment of double... 8

checking for int8... no

checking for uint8... no

checking for int64... no

checking for uint64... no

checking for __int128... yes

checking for __int128 alignment bug... ok

checking alignment of PG_INT128_TYPE... 16

checking for builtin __sync char locking functions... yes

checking for builtin __sync int32 locking functions... yes

checking for builtin __sync int32 atomic operations... yes

checking for builtin __sync int64 atomic operations... yes

checking for builtin __atomic int32 atomic operations... yes

checking for builtin __atomic int64 atomic operations... yes

checking for __get_cpuid... yes

checking for __cpuid... no

checking for _mm_crc32_u8 and _mm_crc32_u32 with CFLAGS=... yes

checking for __crc32cb, __crc32ch, __crc32cw, and __crc32cd with CFLAGS=... no

checking for __crc32cb, __crc32ch, __crc32cw, and __crc32cd with CFLAGS=-march=armv8-a+crc... no

checking which CRC-32C implementation to use... SSE 4.2

checking for library containing sem_init... none required

checking which semaphore API to use... unnamed POSIX

checking which random number source to use... /dev/urandom

checking for /dev/urandom... yes

checking for xmllint... /usr/bin/xmllint

checking for xsltproc... /usr/bin/xsltproc

checking for fop... no

checking for dbtoepub... no

checking whether gcc supports -Wl,--as-needed, for LDFLAGS... yes

checking whether gcc supports -Wl,--export-dynamic, for LDFLAGS_EX_BE... yes

configure: using compiler=gcc (GCC) 12.2.1 20221121 (Anolis OS 12.2.1-2)

configure: using CFLAGS=-Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Werror=vla -Wendif-labels -Wmissing-format-attribute -Wimplicit-fallthrough=3 -Wcast-function-type -Wshadow=compatible-local -Wformat-security -fno-strict-aliasing -fwrapv -fexcess-precision=standard -Wno-format-truncation -Wno-stringop-truncation -O2

configure: using CPPFLAGS= -D_GNU_SOURCE

configure: using LDFLAGS=  -Wl,--as-needed

configure: creating ./config.status

config.status: creating GNUmakefile

config.status: creating src/Makefile.global

config.status: creating src/include/pg_config.h

config.status: creating src/include/pg_config_ext.h

config.status: creating src/interfaces/ecpg/include/ecpg_config.h

config.status: linking src/backend/port/tas/dummy.s to src/backend/port/tas.s

config.status: linking src/backend/port/posix_sema.c to src/backend/port/pg_sema.c

config.status: linking src/backend/port/sysv_shmem.c to src/backend/port/pg_shmem.c

config.status: linking src/include/port/linux.h to src/include/pg_config_os.h

config.status: linking src/makefiles/Makefile.linux to src/Makefile.port

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

2.3 编译

make

make install

3.创建数据库

3.1 配置环境变量

su – postgres

cat >>  ~/.bash_profile <<"EOF"

export PGPORT=5432

export PGDATA=/postgresql/pgdata

export PGHOME=/postgresql/pg16

export LD_LIBRARY_PATH=$PGHOME/lib:$LD_LIBRARY_PATH

export PATH=$PGHOME/bin:$PATH:.

export PGHOST=$PGDATA

export PGUSER=postgres

export PGDATABASE=postgres

export PGCLIENTENCODING=GBK

EOF

3.2 .安装语言包

[root@dbserver1 postgresql-16.1]# yum install glibc-common langpacks-zh_CN glibc-langpack-zh glibc-locale-source

3.3 .支持中文

修改/etc/locale.conf配置

 原配置:    LANG="en_US.UTF-8"

修改为:    LANG="zh_CN.UTF-8"

输入:      source /etc/locale.conf

3.4. 初始化

[postgres@dbserver1 ~]$ export LANG=zh_CN.gbk

[postgres@dbserver1 ~]$ /postgresql/pg16/bin/initdb -D /postgresql/pgdata -E UTF8 --locale=zh_CN.UTF8 -U postgres

The files belonging to this database system will be owned by user "postgres".

This user must also own the server process.

The database cluster will be initialized with locale "zh_CN.UTF8".

initdb: could not find suitable text search configuration for locale "zh_CN.UTF8"

The default text search configuration will be set to "simple".

Data page checksums are disabled.

fixing permissions on existing directory /postgresql/pgdata ... ok

creating subdirectories ... ok

selecting dynamic shared memory implementation ... posix

selecting default max_connections ... 100

selecting default shared_buffers ... 128MB

selecting default time zone ... Asia/Shanghai

creating configuration files ... ok

running bootstrap script ... ok

performing post-bootstrap initialization ... ok

syncing data to disk ... ok

initdb: warning: enabling "trust" authentication for local connections

initdb: hint: You can change this by editing pg_hba.conf or using the option -A, or --auth-local and --auth-host, the next time you run initdb.

Success. You can now start the database server using:

    /postgresql/pg16/bin/pg_ctl -D /postgresql/pgdata -l logfile start

[postgres@dbserver1 ~]$

4.调整参数

4.1 修改数据库基本参数

cat >> /postgresql/pgdata/postgresql.conf << "EOF"

listen_addresses = '*'

port=5432

unix_socket_directories='/postgresql/pgdata'

logging_collector = on

log_directory = 'pg_log'

log_filename = 'postgresql-%a.log'

log_truncate_on_rotation = on

max_connections = 500

shared_buffers = 2GB

EOF

4.2 开放远程访问

cat >> /postgresql/pgdata/pg_hba.conf << "EOF"

# TYPE  DATABASE    USER    ADDRESS       METHOD

host      all       all    0.0.0.0/0        md5

EOF

5.设置服务

5.1 配置系统服务

cat > /etc/systemd/system/PG16.service <<"EOF"

[Unit]

Description=PostgreSQL database server

Documentation=man:postgres(1)

After=network.target

[Service]

Type=forking

User=postgres

Group=postgres

Environment=PGPORT=5432

Environment=PGDATA=/postgresql/pgdata

OOMScoreAdjust=-1000

ExecStart=/postgresql/pg16/bin/pg_ctl start -D ${PGDATA} -s -o "-p ${PGPORT}" -w -t 300

ExecStop=/postgresql/pg16/bin/pg_ctl stop -D ${PGDATA} -s -m fast

ExecReload=/postgresql/pg16/bin/pg_ctl reload -D ${PGDATA} -s

KillMode=mixed

KillSignal=SIGINT

TimeoutSec=0

[Install]

WantedBy=multi-user.target

EOF

5.2 加载PG16服务

systemctl daemon-reload

[root@dbserver1 postgresql-16.1]# systemctl daemon-reload

[root@dbserver1 postgresql-16.1]#

5.3 配置自动启动PG

[root@dbserver1 postgresql-16.1]#

[root@dbserver1 postgresql-16.1]# systemctl enable PG16

Created symlink /etc/systemd/system/multi-user.target.wants/PG16.service → /etc/systemd/system/PG16.service.

6. 启动PG

6.1 通过服务方式去启动PG

[root@dbserver1 postgresql-16.1]# systemctl start PG16.service

6.2 确认PG服务

[root@dbserver1 postgresql-16.1]# systemctl status PG16.service

● PG16.service - PostgreSQL database server

     Loaded: loaded (/etc/systemd/system/PG16.service; enabled; preset: disabled)

     Active: active (running) since Mon 2023-11-27 23:45:37 CST; 2s ago

       Docs: man:postgres(1)

    Process: 88748 ExecStart=/postgresql/pg16/bin/pg_ctl start -D ${PGDATA} -s -o -p ${PGPORT} -w -t 300 (code=exited, status=0/SUCCESS)

   Main PID: 88750 (postgres)

      Tasks: 7 (limit: 9227)

     Memory: 77.4M

        CPU: 122ms

     CGroup: /system.slice/PG16.service

             ├─88750 /postgresql/pg16/bin/postgres -D /postgresql/pgdata -p 5432

             ├─88751 "postgres: logger "

             ├─88752 "postgres: checkpointer "

             ├─88753 "postgres: background writer "

             ├─88755 "postgres: walwriter "

             ├─88756 "postgres: autovacuum launcher "

             └─88757 "postgres: logical replication launcher "

11月 27 23:45:37 dbserver1 systemd[1]: Starting PG16.service - PostgreSQL database server...

11月 27 23:45:37 dbserver1 pg_ctl[88750]: 2023-11-27 23:45:37.799 CST [88750] LOG:  redirecting log output to logging collector process

11月 27 23:45:37 dbserver1 pg_ctl[88750]: 2023-11-27 23:45:37.799 CST [88750] HINT:  Future log output will appear in directory "pg_log".

11月 27 23:45:37 dbserver1 systemd[1]: Started PG16.service - PostgreSQL database server.

7.验证PG

登录PG

[postgres@dbserver1 ~]$ psql -U postgres

psql (16.1)

Type "help" for help.

postgres=#

到此,PG16 源码安装全部执行完。

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

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

相关文章

深度学习回顾:七种网络

一、说明 本文 揭开CNN、Seq2Seq、Faster R-CNN 和 PPO &#xff0c;以及transformer和humg-face— 编码和创新之路。对于此类编程的短小示例&#xff0c;用于对照观察&#xff0c;或做学习实验。 二、CNN网络示例 2.1 CNN用mnist数据集 CNN 专为图像处理而设计&#xff0c;包…

基于SpringBoot与Vue的增城高校二手物品交易系统

基于SpringBoot 与 Vue 的增城高校二手物品交易系统的设计与实现 摘要&#xff1a;随着生活水平和在校大学生消费能力的提高&#xff0c;学生用品的迭代速度越来越快&#xff0c;导致大量的闲置物品无法及时完成处理&#xff0c;而传统的线下摆摊等方式处理不仅效率低&#xf…

ChatGPT等模型:到2026年,将消耗尽高质量训练数据

《麻省理工技术评论》曾在官网发表文章表示&#xff0c;随着ChatGPT等大模型的持续火热&#xff0c;对训练数据的需求越来越大。大模型就像是一个“网络黑洞”不断地吸收&#xff0c;最终会导致没有足够的数据进行训练。 而知名AI研究机构Epochai直接针对数据训练问题发表了一…

每天五分钟计算机视觉:经典架构的力量与启示

在深度学习和计算机视觉领域,卷积神经网络(Convolutional Neural Networks,简称CNN)无疑是最为经典的架构之一。近年来,随着研究的不断深入和新架构的不断涌现,许多初学者可能会忽视这些经典架构的重要性。然而,理解并学习这些经典架构,对于我们深入理解卷积神经网络的…

AI - Steering behaviors(转向系统)

游戏AI角色的转向系统&#xff08;Steering behaviors&#xff09;实现 一些向量的接口是cocos2dx的。但从名字上应该能理解做了什么向量操作 Seek&#xff1a; 获取当前位置指向目标点的向量&#xff0c;转化为单位向量后再乘以速度值&#xff0c;即为所需速度desired velo…

在Windows WSL (Linux的Windows子系统)上运行的Ubuntu如何更改主机名

在Windows 安装的Ubuntu&#xff0c;如何修改主机名。有列了两种方法&#xff0c;提供给大家参照。 文章目录 方法一&#xff1a;hostname指令修改方法二&#xff1a;修改配置文件修改hostnanmewsl.conf 文件配置选项推荐阅读 方法一&#xff1a;hostname指令修改 hostname指…

商用车量产智能驾驶路径思考

1、商用车量产智能驾驶特点 2、量产自动驾驶路径 3、商用车ADAS法规件 4、高等级自动驾驶

【数据中台】开源项目(2)-Davinci可视应用平台

1 平台介绍 Davinci 是一个 DVaaS&#xff08;Data Visualization as a Service&#xff09;平台解决方案&#xff0c;面向业务人员/数据工程师/数据分析师/数据科学家&#xff0c;致力于提供一站式数据可视化解决方案。既可作为公有云/私有云独立部署使用&#xff0c;也可作为…

uni-app 离线打包安卓Apk(小白上手)

场景&#xff1a; 在使用uni-app 开发apk时&#xff0c;使用云打包有次数限制。尤其对于测试阶段是无比难受的&#xff0c;通常是浪费打包次数进行打包或者通过usb 给测试机更新开发环境&#xff0c;但这都是无比漫长的过程 尤其有多个测试机真的是噩梦般的存在 下载离线打包示…

ubuntu虚拟机设置跳不出来

前几天在使用ubuntu虚拟机的时候不知道哪一步出错了&#xff0c;导致右上角的设置按钮失效了&#xff0c;怎么点设置界面都出不来。 上网查阅后&#xff0c;有人说是显示器的原因&#xff0c;但是我点设置再点左上角activity并没有显示有设置窗口。 最后找到了解决办法&#xf…

【AUTOSAR-DoIP】通过 DoIP 进行符合 Autosar 的车辆诊断

前言 通信协议 DoIP(互联网协议诊断)可通过以太网、WLAN 和移动通信对系统进行灵活而强大的诊断:无论是车间外的诊断还是车载诊断,以及驾驶时的远程访问。 DoIP 可以通过多种方式使用:现代车辆中的电子控制系统高度互连并执行各种复杂的功能。 Autosar 支持的通信协议 Do…

Vue快速实践总结 · 下篇

文章目录 组件间通信方式父 --> 子通信props插槽 子 --> 父通信&#xff08;自定义事件&#xff09;任意组件通信全局事件总线消息订阅与发布 Vuex工作原理运行环境简单使用GettersmapState与mapGettersmapActions与mapMutations模块化 命名空间 VueRouter路由的作用与分…

电机工作制

电机工作制 1.什么是电机工作制2.电机工作制的分类 最近在做电机控制器&#xff0c;看到很多电机铭牌上写着工作制&#xff1a;S*&#xff0c;有S1&#xff0c;有S2&#xff0c;查了一下&#xff0c;学习一下是什么意思。 1.什么是电机工作制 根据GBT 755-2019《旋转电机定额…

百度智能小程序系统源码+关键词排名优化 附带完整的搭建教程

百度智能小程序系统的开发背景是基于百度强大的技术实力和对用户需求的深入理解。在移动互联网时代&#xff0c;用户对便捷、高效、智能的服务需求越来越高。而小程序作为一种轻量级的应用程序&#xff0c;恰好能够满足用户的这些需求。然而&#xff0c;开发一个小程序需要掌握…

Rocket架构

NameServer&#xff1a;作为注册中心&#xff0c;提供路由注册、路由踢出、路由发现功能&#xff0c;舍弃强一致&#xff0c;保证高可用&#xff0c;集群中各个节点不会实时通讯&#xff0c;其中一个节点下线之后&#xff0c;会提供另外一个节点保证路由功能。 Rocket mq name…

【Java Spring】SpringBoot Bean详解

文章目录 1、Bean方法注解简介2、Bean注解重命名3、对象装配&#xff08;获取Bean对象&#xff09;3.1 对象装配之属性注入3.2 对象装配之Set 注入3.3 对象装配之构造方法注入 4、Resource VS Autowired5、Bean对象的作用域5.1 验证Bean对象的默认作用域5.2 Bean对象的六大作用…

Clion+Ubuntu(WSL)+MySQL8.0开发环境搭建

1. 下载 MySQL 源码 访问 MySQL 官方网站&#xff08;MySQL :: Download MySQL Community Server&#xff09;并下载 MySQL 8.0 的源码包&#xff08;mysql-boost-8.0.31.tar.gz&#xff09;。 2. 安装编译依赖 1&#xff09;更换镜像源 参考&#xff1a;Linux Ubuntu 修改…

管式真空加热炉高精度真空控制系统技术升级改造解决方案

摘要&#xff1a;针对用户提出的高温石英管加热炉真空度控制系统的升级改造&#xff0c;以及10~100Torr的真空度控制范围&#xff0c;本文在分析现有真空控制系统造成无法准确控制所存在问题的前提下&#xff0c;提出了切实可行的解决方案。解决方案对原有的无PID控制功能的压强…

蓝桥杯day01——负二进制数相加

题目描述 给出基数为 -2 的两个数 arr1 和 arr2&#xff0c;返回两数相加的结果。 数字以 数组形式 给出&#xff1a;数组由若干 0 和 1 组成&#xff0c;按最高有效位到最低有效位的顺序排列。例如&#xff0c;arr [1,1,0,1] 表示数字 (-2)^3 (-2)^2 (-2)^0 -3。数组形式…

PyRFC 服务器端编程要点

PyRFC 支持服务器端编程。什么是服务器端编程&#xff1f;有哪些技术要求&#xff1f;可以参考我的另外一篇博客&#xff1a;SAP接口编程 之JCo3.0系列(06) 。本篇主要介绍 PyRFC 的技术实现。 要点 服务器端编程的主要作用是实现 ABAP 主动调用服务器端编程需要首先在 ABAP…