|
centos换源+安装pgsql
1.更换阿里源:
[ivanlee@localhost Desktop]$ cd /etc/yum.repos.d
[ivanlee@localhost yum.repos.d]$ ls
CentOS-AppStream.repo CentOS-Devel.repo CentOS-PowerTools.repo
CentOS-Base.repo CentOS-Extras.repo CentOS-Sources.repo
CentOS-centosplus.repo CentOS-fasttrack.repo CentOS-Vault.repo
CentOS-CR.repo CentOS-HA.repo
CentOS-Debuginfo.repo CentOS-Media.repo
首先全部删除源的所有文件,遇到所有的询问都是y:
[root@localhost yum.repos.d]# rm *.repo
rm: remove regular file 'CentOS-AppStream.repo'? y
·························
安装新的阿里源:
[root@localhost yum.repos.d]# wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo
--2022-03-22 13:53:56-- https://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo
Resolving mirrors.aliyun.com (mirrors.aliyun.com)... 139.227.225.136, 2408:8744:803:2:3::3fe, 2408:8744:803:2:3::3fd
Connecting to mirrors.aliyun.com (mirrors.aliyun.com)|139.227.225.136|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 2495 (2.4K) [application/octet-stream]
Saving to: ‘/etc/yum.repos.d/CentOS-Base.repo’
/etc/yum.repos.d/CentOS-Base.repo 100%[==========================================================================================================>] 2.44K --.-KB/s in 0s
2022-03-22 13:54:01 (60.0 MB/s) - ‘/etc/yum.repos.d/CentOS-Base.repo’ saved [2495/2495]
[root@localhost yum.repos.d]# yum makecache
CentOS-8.5.2111 - Base - mirrors.aliyun.com 437 kB/s | 4.6 MB 00:10
CentOS-8.5.2111 - Extras - mirrors.aliyun.com 1.0 kB/s | 10 kB 00:10
CentOS-8.5.2111 - AppStream - mirrors.aliyun.com 739 kB/s | 8.4 MB 00:11
Metadata cache created.
2.手动安装pgsql:
[root@localhost yum.repos.d]# dnf install https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm
Last metadata expiration check: 0:00:35 ago on Tue 22 Mar 2022 01:54:51 PM CST.
pgdg-redhat-repo-latest.noarch.rpm 2.0 kB/s | 13 kB 00:06
Dependencies resolved.
=====================================================================================================================================================================================================
Package Architecture Version Repository Size
=====================================================================================================================================================================================================
Installing:
pgdg-redhat-repo noarch 42.0-24 @commandline 13 k
Transaction Summary
=====================================================================================================================================================================================================
Install 1 Package
Total size: 13 k
Installed size: 12 k
Is this ok [y/N]: y
Downloading Packages:
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
Preparing : 1/1
Installing : pgdg-redhat-repo-42.0-24.noarch 1/1
Verifying : pgdg-redhat-repo-42.0-24.noarch 1/1
Installed products updated.
Installed:
pgdg-redhat-repo-42.0-24.noarch
Complete!
[root@localhost yum.repos.d]# dnf module list postgresql
PostgreSQL common RPMs for RHEL / Rocky 8 - x86_64 15 B/s | 195 B 00:12
PostgreSQL common RPMs for RHEL / Rocky 8 - x86_64 1.6 MB/s | 1.7 kB 00:00
Importing GPG key 0x442DF0F8:
Userid : &#34;PostgreSQL RPM Building Project <pgsql-pkg-yum@postgresql.org>&#34;
Fingerprint: 68C9 E2B9 1A37 D136 FE74 D176 1F16 D2E1 442D F0F8
From : /etc/pki/rpm-gpg/RPM-GPG-KEY-PGDG
Is this ok [y/N]: y
PostgreSQL common RPMs for RHEL / Rocky 8 - x86_64 30 kB/s | 619 kB 00:20
PostgreSQL 14 for RHEL / Rocky 8 - x86_64 15 B/s | 195 B 00:12
PostgreSQL 14 for RHEL / Rocky 8 - x86_64 1.6 MB/s | 1.7 kB 00:00
Importing GPG key 0x442DF0F8:
Userid : &#34;PostgreSQL RPM Building Project <pgsql-pkg-yum@postgresql.org>&#34;
Fingerprint: 68C9 E2B9 1A37 D136 FE74 D176 1F16 D2E1 442D F0F8
From : /etc/pki/rpm-gpg/RPM-GPG-KEY-PGDG
Is this ok [y/N]: y
PostgreSQL 14 for RHEL / Rocky 8 - x86_64 11 kB/s | 208 kB 00:19
PostgreSQL 13 for RHEL / Rocky 8 - x86_64 16 B/s | 195 B 00:12
PostgreSQL 13 for RHEL / Rocky 8 - x86_64 1.6 MB/s | 1.7 kB 00:00
Importing GPG key 0x442DF0F8:
Userid : &#34;PostgreSQL RPM Building Project <pgsql-pkg-yum@postgresql.org>&#34;
Fingerprint: 68C9 E2B9 1A37 D136 FE74 D176 1F16 D2E1 442D F0F8
From : /etc/pki/rpm-gpg/RPM-GPG-KEY-PGDG
Is this ok [y/N]: y
PostgreSQL 13 for RHEL / Rocky 8 - x86_64 26 kB/s | 526 kB 00:19
PostgreSQL 12 for RHEL / Rocky 8 - x86_64 15 B/s | 195 B 00:12
PostgreSQL 12 for RHEL / Rocky 8 - x86_64 1.6 MB/s | 1.7 kB 00:00
Importing GPG key 0x442DF0F8:
Userid : &#34;PostgreSQL RPM Building Project <pgsql-pkg-yum@postgresql.org>&#34;
Fingerprint: 68C9 E2B9 1A37 D136 FE74 D176 1F16 D2E1 442D F0F8
From : /etc/pki/rpm-gpg/RPM-GPG-KEY-PGDG
Is this ok [y/N]: y
PostgreSQL 12 for RHEL / Rocky 8 - x86_64 36 kB/s | 694 kB 00:19
PostgreSQL 11 for RHEL / Rocky 8 - x86_64 16 B/s | 195 B 00:12
PostgreSQL 11 for RHEL / Rocky 8 - x86_64 1.6 MB/s | 1.7 kB 00:00
Importing GPG key 0x442DF0F8:
Userid : &#34;PostgreSQL RPM Building Project <pgsql-pkg-yum@postgresql.org>&#34;
Fingerprint: 68C9 E2B9 1A37 D136 FE74 D176 1F16 D2E1 442D F0F8
From : /etc/pki/rpm-gpg/RPM-GPG-KEY-PGDG
Is this ok [y/N]: y
PostgreSQL 11 for RHEL / Rocky 8 - x86_64 41 kB/s | 885 kB 00:21
PostgreSQL 10 for RHEL / Rocky 8 - x86_64 16 B/s | 195 B 00:12
PostgreSQL 10 for RHEL / Rocky 8 - x86_64 1.6 MB/s | 1.7 kB 00:00
Importing GPG key 0x442DF0F8:
Userid : &#34;PostgreSQL RPM Building Project <pgsql-pkg-yum@postgresql.org>&#34;
Fingerprint: 68C9 E2B9 1A37 D136 FE74 D176 1F16 D2E1 442D F0F8
From : /etc/pki/rpm-gpg/RPM-GPG-KEY-PGDG
Is this ok [y/N]: y
PostgreSQL 10 for RHEL / Rocky 8 - x86_64 29 kB/s | 588 kB 00:20
CentOS-8.5.2111 - AppStream - mirrors.aliyun.com
Name Stream Profiles Summary
postgresql 9.6 client, server [d] PostgreSQL server and client module
postgresql 10 [d] client, server [d] PostgreSQL server and client module
postgresql 12 client, server [d] PostgreSQL server and client module
postgresql 13 client, server [d] PostgreSQL server and client module
Hint: [d]efault, [e]nabled, [x]disabled, nstalled
[root@localhost ~]# dnf module disable postgresql
PostgreSQL common RPMs for RHEL / Rocky 8 - x86_64 16 B/s | 195 B 00:12
PostgreSQL 14 for RHEL / Rocky 8 - x86_64 16 B/s | 195 B 00:12
PostgreSQL 13 for RHEL / Rocky 8 - x86_64 16 B/s | 195 B 00:12
PostgreSQL 12 for RHEL / Rocky 8 - x86_64 16 B/s | 195 B 00:12
Dependencies resolved.
=====================================================================================================================================================================================================
Package Architecture Version Repository Size
=====================================================================================================================================================================================================
Disabling modules:
postgresql
Transaction Summary
=====================================================================================================================================================================================================
Is this ok [y/N]: y
Complete!
安装pgsql12:
[root@localhost ~]# dnf install postgresql12
Last metadata expiration check: 0:08:39 ago on Tue 22 Mar 2022 02:00:31 PM CST.
All matches were filtered out by modular filtering for argument: postgresql12
Error: Unable to find a match: postgresql12
[root@localhost ~]# dnf config-manager --disable pgdg11
[root@localhost ~]# dnf config-manager --disable pgdg10
[root@localhost ~]# dnf config-manager --disable pgdg96
Error: No matching repo to modify: pgdg96.
[root@localhost ~]# dnf module disable postgresql
PostgreSQL common RPMs for RHEL / Rocky 8 - x86_64 16 B/s | 195 B 00:12
PostgreSQL 14 for RHEL / Rocky 8 - x86_64 16 B/s | 195 B 00:12
PostgreSQL 13 for RHEL / Rocky 8 - x86_64 16 B/s | 195 B 00:12
PostgreSQL 12 for RHEL / Rocky 8 - x86_64 16 B/s | 195 B 00:12
Dependencies resolved.
=====================================================================================================================================================================================================
Package Architecture Version Repository Size
=====================================================================================================================================================================================================
Disabling modules:
postgresql
Transaction Summary
=====================================================================================================================================================================================================
Is this ok [y/N]: y
Complete!
[root@localhost ~]# dnf install postgresql12
Last metadata expiration check: 0:01:29 ago on Tue 22 Mar 2022 02:10:45 PM CST.
Dependencies resolved.
=====================================================================================================================================================================================================
Package Architecture Version Repository Size
=====================================================================================================================================================================================================
Installing:
postgresql12 x86_64 12.10-1PGDG.rhel8 pgdg12 1.7 M
Installing dependencies:
postgresql12-libs x86_64 12.10-1PGDG.rhel8 pgdg12 400 k
Transaction Summary
=====================================================================================================================================================================================================
Install 2 Packages
Total download size: 2.1 M
Installed size: 10 M
Is this ok [y/N]: y
Downloading Packages:
(1/2): postgresql12-libs-12.10-1PGDG.rhel8.x86_64.rpm 50 kB/s | 400 kB 00:08
(2/2): postgresql12-12.10-1PGDG.rhel8.x86_64.rpm 172 kB/s | 1.7 MB 00:09
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Total 213 kB/s | 2.1 MB 00:09
warning: /var/cache/dnf/pgdg12-64e2194e85277659/packages/postgresql12-12.10-1PGDG.rhel8.x86_64.rpm: Header V4 DSA/SHA1 Signature, key ID 442df0f8: NOKEY
PostgreSQL 12 for RHEL / Rocky 8 - x86_64 1.6 MB/s | 1.7 kB 00:00
Importing GPG key 0x442DF0F8:
Userid : &#34;PostgreSQL RPM Building Project <pgsql-pkg-yum@postgresql.org>&#34;
Fingerprint: 68C9 E2B9 1A37 D136 FE74 D176 1F16 D2E1 442D F0F8
From : /etc/pki/rpm-gpg/RPM-GPG-KEY-PGDG
Is this ok [y/N]: y
Key imported successfully
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
Preparing : 1/1
Installing : postgresql12-libs-12.10-1PGDG.rhel8.x86_64 1/2
Running scriptlet: postgresql12-libs-12.10-1PGDG.rhel8.x86_64 1/2
Installing : postgresql12-12.10-1PGDG.rhel8.x86_64 2/2
Running scriptlet: postgresql12-12.10-1PGDG.rhel8.x86_64 2/2
Verifying : postgresql12-12.10-1PGDG.rhel8.x86_64 1/2
Verifying : postgresql12-libs-12.10-1PGDG.rhel8.x86_64 2/2
Installed products updated.
Installed:
postgresql12-12.10-1PGDG.rhel8.x86_64 postgresql12-libs-12.10-1PGDG.rhel8.x86_64
Complete!
安装服务端:
[root@localhost ~]# dnf install postgresql12-server
Last metadata expiration check: 0:05:33 ago on Tue 22 Mar 2022 02:10:45 PM CST.
Dependencies resolved.
=====================================================================================================================================================================================================
Package Architecture Version Repository Size
=====================================================================================================================================================================================================
Installing:
postgresql12-server x86_64 12.10-1PGDG.rhel8 pgdg12 5.2 M
Transaction Summary
=====================================================================================================================================================================================================
Install 1 Package
Total download size: 5.2 M
Installed size: 21 M
Is this ok [y/N]: y
Downloading Packages:
postgresql12-server-12.10-1PGDG.rhel8.x86_64.rpm 390 kB/s | 5.2 MB 00:13
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Total 390 kB/s | 5.2 MB 00:13
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
Preparing : 1/1
Running scriptlet: postgresql12-server-12.10-1PGDG.rhel8.x86_64 1/1
Installing : postgresql12-server-12.10-1PGDG.rhel8.x86_64 1/1
Running scriptlet: postgresql12-server-12.10-1PGDG.rhel8.x86_64 1/1
Verifying : postgresql12-server-12.10-1PGDG.rhel8.x86_64 1/1
Installed products updated.
Installed:
postgresql12-server-12.10-1PGDG.rhel8.x86_64
Complete!
[root@localhost ~]# dnf install postgresql12-contrib
Last metadata expiration check: 0:09:45 ago on Tue 22 Mar 2022 02:10:45 PM CST.
Dependencies resolved.
=====================================================================================================================================================================================================
Package Architecture Version Repository Size
=====================================================================================================================================================================================================
Installing:
postgresql12-contrib x86_64 12.10-1PGDG.rhel8 pgdg12 645 k
Transaction Summary
=====================================================================================================================================================================================================
Install 1 Package
Total download size: 645 k
Installed size: 2.3 M
Is this ok [y/N]: y
Downloading Packages:
postgresql12-contrib-12.10-1PGDG.rhel8.x86_64.rpm 84 kB/s | 645 kB 00:07
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Total 84 kB/s | 645 kB 00:07
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
Preparing : 1/1
Installing : postgresql12-contrib-12.10-1PGDG.rhel8.x86_64 1/1
Running scriptlet: postgresql12-contrib-12.10-1PGDG.rhel8.x86_64 1/1
Verifying : postgresql12-contrib-12.10-1PGDG.rhel8.x86_64 1/1
Installed products updated.
Installed:
postgresql12-contrib-12.10-1PGDG.rhel8.x86_64
Complete!
注意:程序安装目录是&#34;/usr/pgsql-12&#34;,程序运行目录是&#34;/var/run/postgresql&#34;。
程序运行用户和组是:&#34;postgres:postgres&#34;,&#34;postgres&#34;用户和组安装时默认创建。
pgsql的配置
1.设置数据库默认的数据存储目录
数据库实例的默认存储目录是:/var/lib/pgsql/12/data/。
/var是一个系统目录,不适合存放大量的业务数据,因此要在初始化数据库实例之前创建一个存储目录。
mkdir -p /data/pgsql12-data:因为创建了多级目录,所以需要-p。
[root@localhost /]# mkdir -p /data/pgsql12-data
[root@localhost /]# ls
bin boot data dev etc home lib lib64 lost+found media mnt opt proc root run sbin srv sys tmp usr var
[root@localhost /]# cd data
[root@localhost data]# ll
total 4
drwxr-xr-x. 2 root root 4096 Mar 22 14:27 pgsql12-data
设置数据存储目录的所有者用户和组为postgres:postgres,postgres用户和组在安装PostgreSQL12时已创建。
[root@localhost data]# chown postgres:postgres /data/pgsql12-data
修改postgreSQL12开机启动服务配置文件,设置为新的数据存储目录。
[root@localhost data]# vim /usr/lib/systemd/system/postgresql-12.service<服务配置文件路径!>
将其中的enviroment变量注释掉,改为新的(vim如果卡死,按键ctrl+q)。
2.初始化数据库实例
进入程序安装目录下的bin目录下,执行postgresql-12-setup initdb命令。
[root@localhost data]# cd /usr/pgsql-12/bin
[root@localhost bin]# ./postgresql-12-setup initdb
Initializing database ... OK3.启动数据库实例服务,并设置为开机自动启动
[root@localhost bin]# systemctl enable postgresql-12.service
Created symlink /etc/systemd/system/multi-user.target.wants/postgresql-12.service → /usr/lib/systemd/system/postgresql-12.service.
[root@localhost bin]# systemctl start postgresql-12.service
4.设置数据库实例超级管理员账户postgres的口令
postgreSQL12安装完成后postgres的默认口令为空,为空时无法使用该用户登录数据库。
[root@localhost bin]# passwd postgres
Changing password for user postgres.
New password: prs@2018
Retype new password: prs@2018
passwd: all authentication tokens updated successfully.
[root@localhost bin]# su postgres
bash-4.4$ psql
psql (12.10)
Type &#34;help&#34; for help.
postgres=# alter user postgres with password &#39;prs@2018&#39;;
ALTER ROLE
postgres=# \q
bash-4.4$ exit
exit
[root@localhost bin]#
5.设置数据库实例的远程访问策略
postgreSQL12安装完成后默认只允许本地访问。
① 设置数据库实例访问策略,可以设置多个由主机类型、数据库、用户、IP地址组成的策略。
在文件的&#34;#IPv4 local connections&#34;策略中追加一条“允许全部用户,通过全部网络地址访问全部数据库”的策略并保存,策略定义如下:
vim /data/pgsql12-data/pg_hba.conf &#34;配置文件conf&#34;
② 设置数据库实例的监听端口。
监听地址:*默认是全部地址,默认是localhost||监听端口:默认是5432。
vim /data/pgsql12-data/postgresql.conf
③ 设置防火墙端口。
centOS8默认安装firewall防火墙,允许5432端口(PostgreSQL默认端口)访问服务器。
[root@localhost bin]# firewall-cmd --zone=public --add-port=5432/tcp --permanent
success
[root@localhost bin]# firewall-cmd --reload
success
重新启动数据库服务实例:
systemctl restart postgresql-12.service
数据库的运维和管理:
数据库启动、停止、重启、查看状态、开机自启动、禁用开机自启动。
[root@localhost bin]# systemctl start postgresql-12.service #开启
[root@localhost bin]# systemctl stop postgresql-12.service #停止
[root@localhost bin]# systemctl restart postgresql-12.service #重启
[root@localhost bin]# systemctl status postgresql-12.service #查看状态
● postgresql-12.service - PostgreSQL 12 database server
Loaded: loaded (/usr/lib/systemd/system/postgresql-12.service; enabled; vendor preset: disabled)
Active: active (running) since Tue 2022-03-22 15:02:49 CST; 7s ago
Docs: https://www.postgresql.org/docs/12/static/
Process: 41843 ExecStartPre=/usr/pgsql-12/bin/postgresql-12-check-db-dir ${PGDATA} (code=exited, status=0/SUCCESS)
Main PID: 41849 (postmaster)
Tasks: 8 (limit: 11432)
Memory: 17.8M
CGroup: /system.slice/postgresql-12.service
├─41849 /usr/pgsql-12/bin/postmaster -D /data/pgsql12-data/
├─41853 postgres: logger
├─41855 postgres: checkpointer
├─41856 postgres: background writer
├─41857 postgres: walwriter
├─41858 postgres: autovacuum launcher
├─41859 postgres: stats collector
└─41860 postgres: logical replication launcher
Mar 22 15:02:49 localhost.localdomain systemd[1]: Starting PostgreSQL 12 database server...
Mar 22 15:02:49 localhost.localdomain postmaster[41849]: 2022-03-22 15:02:49.320 CST [41849] LOG: starting PostgreSQL 12.10 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 8.5.0 20210514 (Red Hat 8>
Mar 22 15:02:49 localhost.localdomain postmaster[41849]: 2022-03-22 15:02:49.321 CST [41849] LOG: listening on IPv4 address &#34;0.0.0.0&#34;, port 5432
Mar 22 15:02:49 localhost.localdomain postmaster[41849]: 2022-03-22 15:02:49.321 CST [41849] LOG: listening on IPv6 address &#34;::&#34;, port 5432
Mar 22 15:02:49 localhost.localdomain postmaster[41849]: 2022-03-22 15:02:49.324 CST [41849] LOG: listening on Unix socket &#34;/var/run/postgresql/.s.PGSQL.5432&#34;
Mar 22 15:02:49 localhost.localdomain postmaster[41849]: 2022-03-22 15:02:49.328 CST [41849] LOG: listening on Unix socket &#34;/tmp/.s.PGSQL.5432&#34;
Mar 22 15:02:49 localhost.localdomain postmaster[41849]: 2022-03-22 15:02:49.338 CST [41849] LOG: redirecting log output to logging collector process
Mar 22 15:02:49 localhost.localdomain postmaster[41849]: 2022-03-22 15:02:49.338 CST [41849] HINT: Future log output will appear in directory &#34;log&#34;.
Mar 22 15:02:49 localhost.localdomain systemd[1]: Started PostgreSQL 12 database server.
[root@localhost bin]# systemctl enable postgresql-12.service #开机自动开启
创建用户:
[root@localhost pgsql12-data]# su postgres
bash-4.4$ psql
psql (12.10)
Type &#34;help&#34; for help.
postgres=# CREATE DATABASE pvp_msf;
CREATE DATABASE
postgres=# CREATE DATABASE pvp_strike_db;
CREATE DATABASE
离线安装需要的包:
rpms包:
postgresql12-contrib-12.10-1PGDG.rhel8.x86_64.rpm
postgresql12-devel-12.10-1PGDG.rhel8.x86_64.rpm
postgresql12-docs-12.10-1PGDG.rhel8.x86_64.rpm
postgresql12-libs-12.10-1PGDG.rhel8.x86_64.rpm
postgresql12-llvmjit-12.10-1PGDG.rhel8.x86_64.rpm
postgresql12-plperl-12.10-1PGDG.rhel8.x86_64.rpm
postgresql12-plpython-12.10-1PGDG.rhel8.x86_64.rpm
postgresql12-plpython3-12.10-1PGDG.rhel8.x86_64.rpm
postgresql12-pltcl-12.10-1PGDG.rhel8.x86_64.rpm
postgresql12-server-12.10-1PGDG.rhel8.x86_64.rpm
postgresql12-test-12.10-1PGDG.rhel8.x86_64.rpm
静态资源包:
postgresql-12.10 -tar.gz

推荐阅读
>>>新手必备-Linux入门之云计算是什么
>>>红帽认证入门-Linux系统介绍及企业版本选型
>>>新手必备-Linux系统安装配置+Xshell远程连接
>>>Linux常用命令行合集之绝对路径和相对路径
>>>软连接与硬连接
运维界升职加薪必备的云计算技术,你学了吗?
学完高级运维云计算课程之后,你可以:
- 跨越90%企业的招聘硬门槛
- 增加70%就业机会
- 拿下BAT全国TOP100大厂敲门砖
- 体系化得到运维技术硬实力
- 技术大佬年薪可达30w+
|
|