Pgsql部署记录

#PostgreSQL搭建记录

单点模式

yum安装

先去Pgsql官网找需要安装的版本、这次需要安装的是14.1,把对应的rpm拉下来。点此进入PgSQL官网

yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm

1.安装PgSQL

yum install -y postgresql14-server

2.初始化

/usr/pgsql-14/bin/postgresql-14-setup initdb

3.设置成开机启动

systemctl enable postgresql-14

4.启动服务

sudo systemctl start postgresql-14

5.设置数据库密码

  • 数据库安装后,默认创建账号postgres
  • 使用postgres账号身份操作
su - postgres
  • 使用postgres账号登录数据库
psql -U postgres
  • 设置密码
alter user postgres with password '90-iopjklnm,'
  • 退出
\q    #退出数据库
exit  #退出postgres账号

6.开启远程访问

  • 对所有IP开放访问
  • 打开postgresql.conf文件
vim /var/lib/pgsql/14/data/postgresql.conf
  • 修改listen_address配置(对所有IP开发访问)
listen_address = '*'  #自定义,可多条
  • 增加信任连接
  • 打开pg_hba.conf文件
vim /var/lib/pgsql/14/data/pg_hba.conf
  • 增加信任连接配置
# IPv4 local connections:
host    all             all             0.0.0.0/0               trust
  • 重启服务
systemctl restart postgresql-14

7.添加防火墙端口号 ( 如果关闭了Firewall可忽略,若用的是iptables,请使用对应的方式)

  • 添加端口号
firewall-cmd --zone=public --add-port=5432/tcp --permanent
  • 重载防火墙立即生效
firewall-cmd --reload

创建数据库

1.使用 CREATE DATABASE SQL 语句来创建

CREATE DATABASE 命令需要在 PostgreSQL 命令窗口来执行,语法格式如下:

CREATE DATABASE dbname;

2.使用 createdb 命令来创建。

createdb 是一个 SQL 命令 CREATE DATABASE 的封装。createdb 命令语法格式如下:

createdb [option...] [dbname [description]]

参数说明:

dbname:要创建的数据库名。

description:关于新创建的数据库相关的说明。

options:参数可选项,可以是以下值:

序号选项 & 描述
1-D tablespace指定数据库默认表空间。
2-e 将 createdb 生成的命令发送到服务端。
3-E encoding指定数据库的编码。
4-l locale指定数据库的语言环境。
5-T template指定创建此数据库的模板。
6–help显示 createdb 命令的帮助信息。
7-h host指定服务器的主机名。
8-p port指定服务器监听的端口,或者 socket 文件。
9-U username连接数据库的用户名。
10-w忽略输入密码。
11-W连接时强制要求输入密码。

接下来我们打开一个命令窗口,进入到 PostgreSQL 的安装目录,并进入到 bin 目录,createdb 命令位于 PostgreSQL安装目录/bin 下,执行创建数据库的命令:

$ cd /Library/PostgreSQL/11/bin/
$ createdb -h localhost -p 5432 -U postgres runoobdb
password ******

3.使用 pgAdmin 工具。

简单来说就是登录数据工具…

数据库用户添加和授权

1.登录数据库

su - postgres
psql -U postgres

2.创建一个 gpadmin 用户,并设置密码gpadmin;

CREATE USER gpadmin WITH PASSWORD 'gpadmin';

3.把名为lh_db的数据库权限都给这个新创建的用户gpadmin

grant all privileges on database lh_db to gpadmin;
grant all privileges on all tables in schema public to gpadmin;

如果需要修改登录权限,和之前一样需要到文件里边去改

备份

单库备份

# postgres 用户名 
# lh_db 数据库名
# lh_db.bak备份文件(可带地址,不带为当前目录),bak文件格式
pg_dump -h 127.0.0.1 -U postgres lh_db > lh_db.bak

恢复

单库恢复

psql -h 127.0.0.1 -U postgres -d lh_db < /opt/dbbak/lh_db.bak

备份时遇到版本问题

解决方法:

  1. 检查pg_dump的已安装版本:

find / -name pg_dump -type f 2>/dev/null

​ 我的输出是:

 /usr/pgsql-9.5/bin/pg_dump

/usr/bin/pg_dump

​ 安装了两个版本。 要使用更新版本更新pg_dump:

 ln -s /usr/pgsql-9.5/bin/pg_dump /usr/bin/pg_dump --force

f 2>/dev/null

​ 我的输出是:

 /usr/pgsql-9.5/bin/pg_dump

/usr/bin/pg_dump

​ 安装了两个版本。 要使用更新版本更新pg_dump:

 ln -s /usr/pgsql-9.5/bin/pg_dump /usr/bin/pg_dump --force

[外链图片转存中…(img-f6BzEmBb-1686284283381)]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值