PostgreSQL 安装部署系列:使用YUM 方式在Centos 7.9 安装指定 PostgreSQL -15版本数据库

一、前言

     千里之行始于足下,想学习一门数据库,首先要从安装部署开始,先拥有一套属于自己的学习测试库。为了更好的学习该数据库,可以选择一个在企业界使用率比较普及的操作系统,选择稳定版本的操作系统;如果不是为了研究数据库各版本软件差异,不是为了钻研最新版本数据库的新特性,建议选择一款比较新且稳定成熟的数据库版本软件。

       PostGreSQL作为一款优秀的开源数据库,在国内外广受欢迎,被用于很多行业,在国内外也有很多的PG fans。

       PostGreSQL安装的方式有多种,比如在Linux或MAC操作系统上,可以选择yum、二进制、源码方式安装。

       相对于Windows操作系统,PostGreSQL更多安装在Linux等操作系统上,所以对于Windows如何安装PostGreSQL不在本系列讨论范围内。

       作为PostGreSQL安装部署系列篇,本次讲解如何在Linux上使用YUM来安装,本次选择采用Centos 7.9操作系统来验证。

接下来,安装部署,走起。

二、前期准备

2.1 配置YUM源

      如果你的Linux能联网,建议选择配置一个YUM源,比如选择使用比较普遍的阿里yum源。如何配置YUM源,大家可以搜下网络介绍,本次不作为分享内容,大家可以自行搜索部署。

2.2 下载软件

登录PostGreSQL官网地址:https://www.postgresql.org/download/,进入到如下界面。

image20231228144116495.png

参照上图,选择对应的操作系统,本次选择Linux,然后选择对应的Linux的发行版,本次选择Red Hat/Rocky/AlmaLinux发行版,如下所示。

image20231228144533320.png

然后进入到https://www.postgresql.org/download/linux/redhat/对应的页面,然后选择相应的数据库版本、对应的操作系统版本、对应的架构模式,本次选择PostGreSQL 15版本,如下所示。

image20231228144801254.png

三、安装部署

根据https://www.postgresql.org/download/linux/redhat/所填写内容,拷贝相应命令分别执行。

3.1 安装仓库RPM包

# 使用root用户执行如下命令:
[root@host19c-node1 ~]# sudo yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm

-- 上述命令执行结果如下:
pgdg-redhat-repo-latest.noarch.rpm                                                                                                                                                                                    | 9.0 kB  00:00:00     
Examining /var/tmp/yum-root-CYlXMy/pgdg-redhat-repo-latest.noarch.rpm: pgdg-redhat-repo-42.0-35PGDG.noarch
Marking /var/tmp/yum-root-CYlXMy/pgdg-redhat-repo-latest.noarch.rpm to be installed
Resolving Dependencies
--> Running transaction check
---> Package pgdg-redhat-repo.noarch 0:42.0-35PGDG will be installed
--> Finished Dependency Resolution

Dependencies Resolved

=============================================================================================================================================================================================================================================
 Package                                                  Arch                                           Version                                               Repository                                                               Size
=============================================================================================================================================================================================================================================
Installing:
 pgdg-redhat-repo                                         noarch                                         42.0-35PGDG                                           /pgdg-redhat-repo-latest.noarch                                          13 k

Transaction Summary
=============================================================================================================================================================================================================================================
Install  1 Package

Total size: 13 k
Installed size: 13 k
Downloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Warning: RPMDB altered outside of yum.
** Found 3 pre-existing rpmdb problem(s), 'yum check' output follows:
R-java-3.6.0-1.el7.x86_64 has missing requires of java-headless
ant-1.9.4-2.el7.noarch has missing requires of java-devel >= ('0', '1.5.0', None)
rlwrap-0.43-2.el7.x86_64 has missing requires of /usr/bin/python3.6
  Installing : pgdg-redhat-repo-42.0-35PGDG.noarch                                                                                                                                                                                       1/1 
  Verifying  : pgdg-redhat-repo-42.0-35PGDG.noarch                                                                                                                                                                                       1/1 

Installed:
  pgdg-redhat-repo.noarch 0:42.0-35PGDG                                                                                                                                                                                                      

Complete!

image20231227160156998.png

上述命令执行完毕后,可以使用yum search postgresql命令来查看安装了哪些PostGreSQL数据库相关软件。

# 使用yum search postgresql命令查看相关数据库软件
[root@host19c-node1 ~]# yum search postgresql
-- 上述命令执行结果如下:
pgdg-common/7/x86_64/signature                                                                                                                                                                                        |  198 B  00:00:00     
pgdg-common/7/x86_64/signature                                                                                                                                                                                        | 2.9 kB  00:00:00 !!! 
pgdg11/7/x86_64/signature                                                                                                                                                                                             |  198 B  00:00:00     
pgdg11/7/x86_64/signature                                                                                                                                                                                             | 3.6 kB  00:00:00 !!! 
pgdg12/7/x86_64/signature                                                                                                                                                                                             |  198 B  00:00:00     
pgdg12/7/x86_64/signature                                                                                                                                                                                             | 3.6 kB  00:00:00 !!! 
pgdg13/7/x86_64/signature                                                                                                                                                                                             |  198 B  00:00:00     
Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-PGDG
Importing GPG key 0x442DF0F8:
 Userid     : "PostgreSQL RPM Building Project <pgsql-pkg-yum@postgresql.org>"
 Fingerprint: 68c9 e2b9 1a37 d136 fe74 d176 1f16 d2e1 442d f0f8
 Package    : pgdg-redhat-repo-42.0-35PGDG.noarch (installed)
 From       : /etc/pki/rpm-gpg/RPM-GPG-KEY-PGDG
Is this ok [y/N]: y  
pgdg13/7/x86_64/signature                                                                                                                                                                                             | 3.6 kB  00:00:38 !!! 
pgdg14/7/x86_64/signature                                                                                                                                                                                             |  198 B  00:00:00     
Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-PGDG
Importing GPG key 0x442DF0F8:
 Userid     : "PostgreSQL RPM Building Project <pgsql-pkg-yum@postgresql.org>"
 Fingerprint: 68c9 e2b9 1a37 d136 fe74 d176 1f16 d2e1 442d f0f8
 Package    : pgdg-redhat-repo-42.0-35PGDG.noarch (installed)
 From       : /etc/pki/rpm-gpg/RPM-GPG-KEY-PGDG
Is this ok [y/N]: N
pgdg14/7/x86_64/signature                                                                                                                                                                                             | 3.6 kB  00:00:12 !!! 
https://download.postgresql.org/pub/repos/yum/14/redhat/rhel-7-x86_64/repodata/repomd.xml: [Errno -1] Gpg Keys not imported, cannot verify repomd.xml for repo pgdg14
Trying other mirror.


 One of the configured repositories failed (PostgreSQL 14 for RHEL / CentOS 7 - x86_64),
 and yum doesn't have enough cached data to continue. At this point the only
 safe thing yum can do is fail. There are a few ways to work "fix" this:

     1. Contact the upstream for the repository and get them to fix the problem.

     2. Reconfigure the baseurl/etc. for the repository, to point to a working
        upstream. This is most often useful if you are using a newer
        distribution release than is supported by the repository (and the
        packages for the previous distribution release still work).

     3. Run the command with the repository temporarily disabled
            yum --disablerepo=pgdg14 ...

     4. Disable the repository permanently, so yum won't use it by default. Yum
        will then just ignore the repository until you permanently enable it
        again or use --enablerepo for temporary usage:

            yum-config-manager --disable pgdg14
        or
            subscription-manager repos --disable=pgdg14

     5. Configure the failing repository to be skipped, if it is unavailable.
        Note that yum will try to contact the repo. when it runs most commands,
        so will have to try and fail each time (and thus. yum will be be much
        slower). If it is a very temporary problem though, this is often a nice
        compromise:

            yum-config-manager --save --setopt=pgdg14.skip_if_unavailable=true

failure: repodata/repomd.xml from pgdg14: [Errno 256] No more mirrors to try.
https://download.postgresql.org/pub/repos/yum/14/redhat/rhel-7-x86_64/repodata/repomd.xml: [Errno -1] Gpg Keys not imported, cannot verify repomd.xml for repo pgdg14

可以发现在执行yum search postgresql根据提示输入N后,会有failure: repodata/repomd.xml from pgdg14: [Errno 256] No more mirrors to try的报错信息。

根据上述报错查询了网上信息,根据https://www.postgresql.org/message-id/C7C14870-90FE-40B8-93CF-1068B1D43F78%40contoso.com这篇文章内容显示是遇到了一个bug,详细信息如下:

image20231227160317085.png

3.2 安装数据库

接下来,安装PostGreSQL 15版本数据库,详细信息如下:

# 使用root用户执行yum install -y postgresql15-server命令。
[root@host19c-node1 ~]# sudo yum install -y postgresql15-server
-- 上述命令执行结果如下:
base                                                                                                                                                                                                                  | 3.6 kB  00:00:00     
epel                                                                                                                                                                                                                  | 4.7 kB  00:00:00     
extras                                                                                                                                                                                                                | 2.9 kB  00:00:00     
pgdg-common/7/x86_64/signature                                                                                                                                                                                        |  198 B  00:00:00     
pgdg-common/7/x86_64/signature                                                                                                                                                                                        | 2.9 kB  00:00:00 !!! 
pgdg11/7/x86_64/signature                                                                                                                                                                                             |  198 B  00:00:00     
pgdg11/7/x86_64/signature                                                                                                                                                                                             | 3.6 kB  00:00:00 !!! 
pgdg12/7/x86_64/signature                                                                                                                                                                                             |  198 B  00:00:00     
pgdg12/7/x86_64/signature                                                                                                                                                                                             | 3.6 kB  00:00:00 !!! 
pgdg13/7/x86_64/signature                                                                                                                                                                                             |  198 B  00:00:00     
pgdg13/7/x86_64/signature                                                                                                                                                                                             | 3.6 kB  00:00:00 !!! 
pgdg14/7/x86_64/signature                                                                                                                                                                                             |  198 B  00:00:00     
Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-PGDG
Importing GPG key 0x442DF0F8:
 Userid     : "PostgreSQL RPM Building Project <pgsql-pkg-yum@postgresql.org>"
 Fingerprint: 68c9 e2b9 1a37 d136 fe74 d176 1f16 d2e1 442d f0f8
 Package    : pgdg-redhat-repo-42.0-35PGDG.noarch (installed)
 From       : /etc/pki/rpm-gpg/RPM-GPG-KEY-PGDG
pgdg14/7/x86_64/signature                                                                                                                                                                                             | 3.6 kB  00:00:00 !!! 
pgdg15/7/x86_64/signature                                                                                                                                                                                             |  198 B  00:00:00     
Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-PGDG
Importing GPG key 0x442DF0F8:
 Userid     : "PostgreSQL RPM Building Project <pgsql-pkg-yum@postgresql.org>"
 Fingerprint: 68c9 e2b9 1a37 d136 fe74 d176 1f16 d2e1 442d f0f8
 Package    : pgdg-redhat-repo-42.0-35PGDG.noarch (installed)
 From       : /etc/pki/rpm-gpg/RPM-GPG-KEY-PGDG
pgdg15/7/x86_64/signature                                                                                                                                                                                             | 3.6 kB  00:00:00 !!! 
updates                                                                                                                                                                                                               | 2.9 kB  00:00:00     
(1/11): pgdg12/7/x86_64/group_gz                                                                                                                                                                                      |  245 B  00:00:01     
(2/11): pgdg13/7/x86_64/group_gz                                                                                                                                                                                      |  246 B  00:00:00     
(3/11): pgdg11/7/x86_64/group_gz                                                                                                                                                                                      |  245 B  00:00:01     
(4/11): pgdg12/7/x86_64/primary_db                                                                                                                                                                                    | 416 kB  00:00:01     
(5/11): pgdg14/7/x86_64/primary_db                                                                                                                                                                                    | 249 kB  00:00:00     
(6/11): pgdg11/7/x86_64/primary_db                                                                                                                                                                                    | 524 kB  00:00:02     
(7/11): pgdg14/7/x86_64/group_gz                                                                                                                                                                                      |  244 B  00:00:00     
(8/11): pgdg15/7/x86_64/group_gz                                                                                                                                                                                      |  246 B  00:00:00     
(9/11): pgdg13/7/x86_64/primary_db                                                                                                                                                                                    | 337 kB  00:00:01     
(10/11): pgdg15/7/x86_64/primary_db                                                                                                                                                                                   | 156 kB  00:00:00     
(11/11): pgdg-common/7/x86_64/primary_db                                                                                                                                                                              | 203 kB  00:00:02     
Resolving Dependencies
--> Running transaction check
---> Package postgresql15-server.x86_64 0:15.5-1PGDG.rhel7 will be installed
--> Processing Dependency: postgresql15-libs(x86-64) = 15.5-1PGDG.rhel7 for package: postgresql15-server-15.5-1PGDG.rhel7.x86_64
--> Processing Dependency: postgresql15(x86-64) = 15.5-1PGDG.rhel7 for package: postgresql15-server-15.5-1PGDG.rhel7.x86_64
--> Processing Dependency: libpq.so.5()(64bit) for package: postgresql15-server-15.5-1PGDG.rhel7.x86_64
--> Running transaction check
---> Package postgresql15.x86_64 0:15.5-1PGDG.rhel7 will be installed
---> Package postgresql15-libs.x86_64 0:15.5-1PGDG.rhel7 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

=============================================================================================================================================================================================================================================
 Package                                                         Arch                                               Version                                                         Repository                                          Size
=============================================================================================================================================================================================================================================
Installing:
 postgresql15-server                                             x86_64                                             15.5-1PGDG.rhel7                                                pgdg15                                             5.8 M
Installing for dependencies:
 postgresql15                                                    x86_64                                             15.5-1PGDG.rhel7                                                pgdg15                                             1.6 M
 postgresql15-libs                                               x86_64                                             15.5-1PGDG.rhel7                                                pgdg15                                             284 k

Transaction Summary
=============================================================================================================================================================================================================================================
Install  1 Package (+2 Dependent packages)

Total download size: 7.7 M
Installed size: 34 M
Downloading packages:
warning: /var/cache/yum/x86_64/7/pgdg15/packages/postgresql15-libs-15.5-1PGDG.rhel7.x86_64.rpm: Header V4 DSA/SHA1 Signature, key ID 442df0f8: NOKEY                                                       ]  0.0 B/s | 112 kB  --:--:-- ETA 
Public key for postgresql15-libs-15.5-1PGDG.rhel7.x86_64.rpm is not installed
(1/3): postgresql15-libs-15.5-1PGDG.rhel7.x86_64.rpm                                                                                                                                                                  | 284 kB  00:00:01     
(2/3): postgresql15-server-15.5-1PGDG.rhel7.x86_64.rpm                                                                                                                                                                | 5.8 MB  00:00:01     
(3/3): postgresql15-15.5-1PGDG.rhel7.x86_64.rpm                                                                                                                                                                       | 1.6 MB  00:00:05     
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Total                                                                                                                                                                                                        1.3 MB/s | 7.7 MB  00:00:05     
Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-PGDG
Importing GPG key 0x442DF0F8:
 Userid     : "PostgreSQL RPM Building Project <pgsql-pkg-yum@postgresql.org>"
 Fingerprint: 68c9 e2b9 1a37 d136 fe74 d176 1f16 d2e1 442d f0f8
 Package    : pgdg-redhat-repo-42.0-35PGDG.noarch (installed)
 From       : /etc/pki/rpm-gpg/RPM-GPG-KEY-PGDG
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : postgresql15-libs-15.5-1PGDG.rhel7.x86_64                                                                                                                                                                                 1/3 
  Installing : postgresql15-15.5-1PGDG.rhel7.x86_64                                                                                                                                                                                      2/3 
  Installing : postgresql15-server-15.5-1PGDG.rhel7.x86_64                                                                                                                                                                               3/3 
  Verifying  : postgresql15-15.5-1PGDG.rhel7.x86_64                                                                                                                                                                                      1/3 
  Verifying  : postgresql15-server-15.5-1PGDG.rhel7.x86_64                                                                                                                                                                               2/3 
  Verifying  : postgresql15-libs-15.5-1PGDG.rhel7.x86_64                                                                                                                                                                                 3/3 

Installed:
  postgresql15-server.x86_64 0:15.5-1PGDG.rhel7                                                                                                                                                                                              

Dependency Installed:
  postgresql15.x86_64 0:15.5-1PGDG.rhel7                                                                             postgresql15-libs.x86_64 0:15.5-1PGDG.rhel7                                                                            

Complete!

3.3 初始化数据库

执行yum install -y postgresql15-server安装数据库,可以查看到数据库的相关命令在/usr/pgsql-15/bin目录下。

[root@host19c-node1 pgsql-15]# pwd
/usr/pgsql-15
[root@host19c-node1 pgsql-15]# ls -lrt
total 12
drwxr-xr-x 2 root root 4096 Dec 27 16:03 bin
drwxr-xr-x 3 root root 4096 Dec 27 16:03 lib
drwxr-xr-x 7 root root 4096 Dec 27 16:03 share

image20231228150748615.png

接下来来初始化数据库,操作命令如下:

 
# 使用root用户执行/usr/pgsql-15/bin/postgresql-15-setup initdb
[root@host19c-node1 ~]# sudo /usr/pgsql-15/bin/postgresql-15-setup initdb
-- 上述命令执行结果如下:
Initializing database ... OK

# 可以进行如下配置设置服务器重启后数据库自启动。

# 使用root用户执行systemctl enable postgresql-15
[root@host19c-node1 ~]# sudo systemctl enable postgresql-15
Created symlink from /etc/systemd/system/multi-user.target.wants/postgresql-15.service to /usr/lib/systemd/system/postgresql-15.service.

# 使用root用户执行systemctl start postgresql-15启动数据库
[root@host19c-node1 ~]# sudo systemctl start postgresql-15

# 使用systemctl status postgresql-15命令查看数据库启动状态
[root@host19c-node1 ~]# sudo systemctl status postgresql-15
● postgresql-15.service - PostgreSQL 15 database server
   Loaded: loaded (/usr/lib/systemd/system/postgresql-15.service; enabled; vendor preset: disabled)
   Active: active (running) since Wed 2023-12-27 16:07:39 CST; 8s ago
     Docs: https://www.postgresql.org/docs/15/static/
  Process: 35602 ExecStartPre=/usr/pgsql-15/bin/postgresql-15-check-db-dir ${PGDATA} (code=exited, status=0/SUCCESS)
 Main PID: 35609 (postmaster)
    Tasks: 7
   Memory: 15.0M
   CGroup: /system.slice/postgresql-15.service
           ├─35609 /usr/pgsql-15/bin/postmaster -D /var/lib/pgsql/15/data/
           ├─35610 postgres: logger 
           ├─35611 postgres: checkpointer 
           ├─35612 postgres: background writer 
           ├─35614 postgres: walwriter 
           ├─35615 postgres: autovacuum launcher 
           └─35616 postgres: logical replication launcher 

Dec 27 16:07:39 host19c-node1 systemd[1]: Starting PostgreSQL 15 database server...
Dec 27 16:07:39 host19c-node1 postmaster[35609]: 2023-12-27 16:07:39.363 CST [35609] LOG:  redirecting log output to logging collector process
Dec 27 16:07:39 host19c-node1 postmaster[35609]: 2023-12-27 16:07:39.363 CST [35609] HINT:  Future log output will appear in directory "log".
Dec 27 16:07:39 host19c-node1 systemd[1]: Started PostgreSQL 15 database server.

image20231227160827028.png

数据库初始并启动后,可以查看到数据库的默认安装路径在/var/lib/pgsql/15/目录下,相关信息如下:

[root@host19c-node1 ~]# cd /var/lib/pgsql/15/
[root@host19c-node1 15]# ll
total 8
drwx------  2 postgres postgres    6 Nov  9 04:34 backups
drwx------ 20 postgres postgres 4096 Dec 27 16:07 data
-rw-------  1 postgres postgres  921 Dec 27 16:06 initdb.log
[root@host19c-node1 15]# ls -lrt ./data/
total 68
-rw------- 1 postgres postgres     3 Dec 27 16:06 PG_VERSION
drwx------ 2 postgres postgres     6 Dec 27 16:06 pg_twophase
drwx------ 2 postgres postgres     6 Dec 27 16:06 pg_tblspc
drwx------ 2 postgres postgres     6 Dec 27 16:06 pg_stat_tmp
drwx------ 2 postgres postgres     6 Dec 27 16:06 pg_snapshots
drwx------ 2 postgres postgres     6 Dec 27 16:06 pg_serial
drwx------ 2 postgres postgres     6 Dec 27 16:06 pg_replslot
drwx------ 2 postgres postgres     6 Dec 27 16:06 pg_notify
drwx------ 4 postgres postgres    36 Dec 27 16:06 pg_multixact
drwx------ 2 postgres postgres     6 Dec 27 16:06 pg_dynshmem
drwx------ 2 postgres postgres     6 Dec 27 16:06 pg_commit_ts
-rw------- 1 postgres postgres 29460 Dec 27 16:06 postgresql.conf
-rw------- 1 postgres postgres    88 Dec 27 16:06 postgresql.auto.conf
-rw------- 1 postgres postgres  1636 Dec 27 16:06 pg_ident.conf
-rw------- 1 postgres postgres  4577 Dec 27 16:06 pg_hba.conf
drwx------ 3 postgres postgres    60 Dec 27 16:06 pg_wal
drwx------ 2 postgres postgres    18 Dec 27 16:06 pg_xact
drwx------ 2 postgres postgres    18 Dec 27 16:06 pg_subtrans
drwx------ 5 postgres postgres    33 Dec 27 16:06 base
drwx------ 2 postgres postgres    32 Dec 27 16:07 log
-rw------- 1 postgres postgres    30 Dec 27 16:07 current_logfiles
-rw------- 1 postgres postgres    58 Dec 27 16:07 postmaster.opts
drwx------ 2 postgres postgres     6 Dec 27 16:07 pg_stat
-rw------- 1 postgres postgres   104 Dec 27 16:07 postmaster.pid
drwx------ 2 postgres postgres  4096 Dec 27 16:08 global
drwx------ 4 postgres postgres    68 Dec 27 16:12 pg_logical

image20231227161408590.png

四、验证测试

数据库安装后,我们来进行简单的验证测试。

使用yum安装数据库后,默认会创建postgres用户。

# 切换到postgres用户
[root@host19c-node1 ~]# su - postgres
Last login: Wed Dec 27 16:09:13 CST 2023 on pts/5
-bash-4.2$ psql
psql (15.5)
Type "help" for help.

# 查看初始化后的数据库默认库和用户
postgres=# \d
Did not find any relations.
postgres=# \l
                                                 List of databases
   Name    |  Owner   | Encoding |   Collate   |    Ctype    | ICU Locale | Locale Provider |   Access privileges   
-----------+----------+----------+-------------+-------------+------------+-----------------+-----------------------
 postgres  | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 |            | libc            | 
 template0 | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 |            | libc            | =c/postgres          +
           |          |          |             |             |            |                 | postgres=CTc/postgres
 template1 | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 |            | libc            | =c/postgres          +
           |          |          |             |             |            |                 | postgres=CTc/postgres
(3 rows)

# 创建一个测试库
postgres=# CREATE DATABASE pg15;

CREATE DATABASE
postgres=# 
postgres=# \c pg15;
You are now connected to database "pg15" as user "postgres".
pg15=# CREATE TABLE pgtb (
pg15(#     id SERIAL PRIMARY KEY,
pg15(#     username VARCHAR(50) NOT NULL,
pg15(#     email VARCHAR(100) NOT NULL UNIQUE,
pg15(#     created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
pg15(# );
CREATE TABLE
pg15=# 
pg15=# INSERT INTO pgtb (username, email) VALUES
pg15-# ('user1', 'user1@example.com'),
pg15-# ('user2', 'user2@example.com');

INSERT 0 2
pg15=# 
pg15=# select * from pgtb;
 id | username |       email       |         created_at         
----+----------+-------------------+----------------------------
  1 | user1    | user1@example.com | 2023-12-27 16:37:16.218811
  2 | user2    | user2@example.com | 2023-12-27 16:37:16.218811
(2 rows)

pg15=# 

image20231227163814126.png

万里长征已开启第一步,现在你已拥有了一个PG数据库,请开启你的PG学习之旅吧。

五、卸载数据库

卸载使用YUM安装的数据库也比较简单,可以采用yum remove postgresql15-server卸载安装的数据库。

[root@host19c-node1 ~]# yum remove postgresql15-server
Resolving Dependencies
--> Running transaction check
---> Package postgresql15-server.x86_64 0:15.5-1PGDG.rhel7 will be erased
--> Processing Dependency: postgresql15-server(x86-64) = 15.5-1PGDG.rhel7 for package: postgresql15-contrib-15.5-1PGDG.rhel7.x86_64
--> Running transaction check
---> Package postgresql15-contrib.x86_64 0:15.5-1PGDG.rhel7 will be erased
--> Finished Dependency Resolution

Dependencies Resolved

=============================================================================================================================================================================================================================================
 Package                                                          Arch                                               Version                                                       Repository                                           Size
=============================================================================================================================================================================================================================================
Removing:
 postgresql15-server                                              x86_64                                             15.5-1PGDG.rhel7                                              @pgdg15                                              24 M
Removing for dependencies:
 postgresql15-contrib                                             x86_64                                             15.5-1PGDG.rhel7                                              @pgdg15                                             2.5 M

Transaction Summary
=============================================================================================================================================================================================================================================
Remove  1 Package (+1 Dependent package)

Installed size: 27 M
Is this ok [y/N]: y
Downloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Erasing    : postgresql15-contrib-15.5-1PGDG.rhel7.x86_64                                                                                                                                                                              1/2 
  Erasing    : postgresql15-server-15.5-1PGDG.rhel7.x86_64                                                                                                                                                                               2/2 
  Verifying  : postgresql15-contrib-15.5-1PGDG.rhel7.x86_64                                                                                                                                                                              1/2 
  Verifying  : postgresql15-server-15.5-1PGDG.rhel7.x86_64                                                                                                                                                                               2/2 

Removed:
  postgresql15-server.x86_64 0:15.5-1PGDG.rhel7                                                                                                                                                                                              

Dependency Removed:
  postgresql15-contrib.x86_64 0:15.5-1PGDG.rhel7                                                                                                                                                                                             

Complete!

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

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

相关文章

Kafka Stream实战教程

Kafka Stream实战教程 1. Kafka Streams 基础入门 1.1 什么是 Kafka Streams Kafka Streams 是 Kafka 生态中用于 处理实时流数据 的一款轻量级流处理库。它利用 Kafka 作为数据来源和数据输出&#xff0c;可以让开发者轻松地对实时数据进行处理&#xff0c;比如计数、聚合、…

Flink:入门介绍

目录 一、Flink简介 2.1 Flink 架构 2.2 Flink 应用程序 运行模式 二、Flink 集群 部署 2.1 本地集群模式 2.1.1 安装JDK​编辑 2.1.2 下载、解压 Flink 2.1.3 启动集群 2.1.4 停止集群 2.2 Standalone 模式 2.2.0 集群规划 2.2.1 安装JDK 2.2.2 设置免密登录 2…

重生之我在异世界学编程之C语言:深入结构体篇(上)

大家好&#xff0c;这里是小编的博客频道 小编的博客&#xff1a;就爱学编程 很高兴在CSDN这个大家庭与大家相识&#xff0c;希望能在这里与大家共同进步&#xff0c;共同收获更好的自己&#xff01;&#xff01;&#xff01; 本文目录 引言正文《1》 结构体的两种声明一、结构…

移动充电服务如何打破传统的新能源汽车充电难、找桩难问题?

中国新能源汽车在全球市场中占据重要地位&#xff0c;2024年上半年&#xff0c;中国新能源汽车销量达到494.4万辆&#xff0c;占全球新能源市场的68%。新能源汽车作为国家实现“碳中和”的重要途径之一&#xff0c;国家陆续出台各项产业政策&#xff0c;推动新能源汽车行业往标…

AI大模型ollama结合Open-webui

AI大模型Ollama结合Open-webui 作者:行癫(盗版必究) 一:认识 Ollama 1.什么是Ollama ​ Ollama是一个开源的 LLM(大型语言模型)服务工具,用于简化在本地运行大语言模型,降低使用大语言模型的门槛,使得大模型的开发者、研究人员和爱好者能够在本地环境快速实验、管理和…

Ubuntu Linux 图形界面工具管理磁盘分区和文件系统(八)

本文为Ubuntu Linux操作系统- 第八弹~~ 今天接着上文的内容&#xff0c;讲Linux磁盘分区存储的相关知识~ 上期回顾&#xff1a;命令行-管理磁盘分区和文件系统 今天看酷酷的雪獒铠甲&#xff01;&#xff01;雪獒铠甲合体~ 文章目录 磁盘管理器GNOME Disks主要功能安装命令 磁盘…

AI大模型的实践应用-探索智能科技的未来(附学习教程资源)

第一章&#xff1a;AI大模型技术概览 1.1 AI大模型的定义与特点 AI大模型&#xff0c;通常指的是参数数量达到数亿甚至数千亿的深度学习模型。这些模型因其庞大的参数量而得名&#xff0c;能够捕捉和学习数据中的复杂模式和关系。与传统模型相比&#xff0c;AI大模型具有更强的…

AI 数字人模型 Hallo2:让图片开口说话,一键修复模糊人脸

Hallo2 是由复旦大学 (Fudan University)、百度公司 (Baidu Inc) 和南京大学 (Nanjing University) 于 2024 年联合开发的一项先进技术&#xff0c;旨在生成长时间、高质量的唇形视频。该技术在原有的 Hallo 模型基础上进行了多项创新和改进&#xff0c;使其能够应对长时间视频…

反向代理-缓存篇

文章目录 强缓存一、Expires(http1.0 规范)二、cache-control(http1.1 出现的 header 信息)Cache-Control 的常用选项Cache-Control 常用选项的选择三、弊端协商缓存一、ETag二、If-None-Match三、Last-modified四、If-Modified-Since浏览器的三种刷新方式静态资源部署策略…

uniapp扭蛋机组件

做了一个uniapp的扭蛋机组件&#xff0c;可以前往下载地址下载 仅测试了vue2、3、h5页面微信小程序&#xff0c;理论支持全平台 使用方法简单&#xff0c;具有待机动效、抽奖中动效、掉落奖品动效&#xff0c;可以替换奖品图片&#xff0c;足以满足大部分抽奖页面需求。 示例图…

QT实战--QTreeWidget实现两种行颜色+QListWidget样式

本文主要介绍了QTreeWidget实现两种行颜色、点击打开父节点以及设置父子节点之间距离,同时附带介绍了QListWidget样式 树效果图: 列表效果图: 1.树样式的实现 1)使用代码: m_pLeftTreeWidget = new QTreeWidget(this);m_pLeftTreeWidget->setObjectName("suolue_t…

React - useActionState、useFormStatus与表单处理

参考文档&#xff1a;react18.3.1官方文档 一些概念&#xff1a; React 的 Canary 和 Experimental 频道是 React 团队用于发布和测试新功能的渠道。 useActionState useActionState 是一个可以根据某个表单动作的结果更新 state 的 Hook。 const [state, formAction, isPe…

Oracle之表空间迁移

问题背景&#xff1a;一个数据表随着时间的累积&#xff0c;导致所在表空间占用很高&#xff0c;里面历史数据可以清除&#xff0c;保留近2个月数据即可 首先通过delete删除了2个月以前的数据。 按网上的教程进行空间压缩&#xff0c;以下sql在表所在用户执行: -- 允许表重新…

如何在UI自动化测试中创建稳定的定位器?

如何在UI自动化测试中创建稳定的定位器&#xff1f; 前言1. 避免使用绝对路径2. 避免在定位器中使用索引3. 避免多个类名的定位器4. 避免动态和自动生成的ID5. 确保定位器唯一6. 处理隐藏元素的策略7. 谨慎使用基于文本的定位器8. 使用AI创建稳定的定位器 总结 前言 在自动化测…

从一条慢sql优化,深入探讨mysql的优化器优化机制

在某环境发现一个前端请求报错&#xff0c;经查为一条复杂的sql耗时约70s&#xff0c;最终导致前端响应超时。下面叙述下本次问题排查及根因分析过程&#xff0c;供其他同学参考。 本文中使用到的数据库是mariadb&#xff0c;对于mysql也是基本适用。 一&#xff0c;连接算法…

SpringBoot+OSS文件(图片))上传

SpringBoot整合OSS实现文件上传 以前,文件上传到本地(服务器,磁盘),文件多,大,会影响服务器性能 如何解决? 使用文件服务器单独存储这些文件,例如商业版–>七牛云存储,阿里云OSS,腾讯云cos等等 也可以自己搭建文件服务器(FastDFS,minio) 0 过程中需要实名认证 … 1 开…

Linux其三,yum源配置,定时任务,免密登录和查找命令

目录 一、Linux的两种软件安装方式 1、Yum源配置 2、linux中软件安装的另一种方式 rpm 3、安装mysql8.0 二、对虚拟机进行克隆 1、先关机 2、最新的状态&#xff0c;整个快照 3、开始克隆 4、修改克隆的服务器的硬件设置 5、修改克隆机的IP地址&#xff08;因为跟第一…

linux环境GitLab服务部署安装及使用

一、GitLab介绍 GitLab是利用Ruby onRails一个开源的版本管理系统&#xff0c;实现一个自托管的Git项目仓库&#xff0c;可通过Web界面进行访问公开的或者私人项目。 二、GitLab安装 1、先安装相关依赖 yum -y install policycoreutils openssh-server openssh-clients postf…

/usr/local/go/bin/go: cannot execute binary file: Exec format error

现象&#xff1a;ubuntu中安装go软件环境&#xff0c;报上述错误 原因&#xff1a;系统与软件不适配 解决&#xff1a;查看本系统的版本 找到x86-64对应的go版本即可

技术 + 舞蹈,探秘 SpringBoot 硬核广场舞团

3 系统分析 3.1 系统可行性分析 3.1.1 经济可行性 由于本系统是作为毕业设计系统&#xff0c;且系统本身存在一些技术层面的缺陷&#xff0c;并不能直接用于商业用途&#xff0c;只想要通过该系统的开发提高自身学术水平&#xff0c;不需要特定服务器等额外花费。所有创造及工作…