PostgreSQL搭建记录

介绍

  • 这学期的数据库课程要求使用PostgreSQL作为学习使用的数据库工具。
  • 所以今天尝试着安装了一下PostgreSQL,出了一些问题,在此做一个记录。

环境

Windows

  • Windows是首选,不论安装还是后期使用都方便许多。
  • PostgreSQL自带pgAdmin也省去了很多步骤。
  • 这里参考一些博客论坛,提出一些问题并给出方法。

安装

  • 目前Windows版本已经更新到了13,不过老师要求的也就是10

  • 这里我选择了10.1611.1113.2(官网提供的几个版本)分别尝试安装。

  • 结果以上版本在安装时都出现了同一个问题。

  • 上网搜索过后,大致给出了三种可能:

    1. 路径中包含中文(然而我并没有)
    2. 权限不够(管理员打开也不行)
    3. 之前安装过的Temp文件冲突。
  • 结合以上的问题,总结了一下解决过程:

    1. 先到对应路径下,把Temp文件夹中所有postgresql_install的文件夹删除(需要管理员权限)

    2. 删除后保证用户名不包含中文,即可正常安装。

    3. 安装到选择目录时,如果你曾尝试在此目录安装,可能出现

      the choosen installation directory exists and is non-empty.please choose a different directory
      
    4. 把此目录删除后新建即可。

    Linux

  • Windows安装虽然简便,但是一个简单的步骤出了很多莫名的问题。

  • 与此同时我在Ubuntu安装了一个Linux版本的PostgreSQL

  • Linux中,PostgreSQLpgAdmin4没有捆绑,需要后期建立连接。

    安装

  • 这里参考了一下官方的方法,下面相当于对方法的翻译和总结吧。

  • 更新系统软件包

sudo apt update
  • 直接在库中安装最新的PostgreSQL
sudo apt install postgresql

默认的data文件夹在/var/lib/postgresql/12/main下,配置文件在/etc/postgresql/12/main

  • 添加存储库的公共密钥并创建存储库配置文件
curl https://www.pgadmin.org/static/packages_pgadmin_org.pub | sudo apt-key add
sudo sh -c 'echo "deb https://ftp.postgresql.org/pub/pgadmin/pgadmin4/apt/$(lsb_release -cs) pgadmin4 main" > /etc/apt/sources.list.d/pgadmin4.list && apt update'

由于Ubuntu库中没有pgAdmin4,只能通过pgAdmin4 APT仓库安装。

  • 安装pgAdmin4
sudo apt install pgadmin4

检查

  • 安装完成后,检查PostgreSQL状态
sudo systemctl is-active postgresql
sudo systemctl is-enabled postgresql
sudo systemctl status postgresql
  • 确认PostgreSQL server的状态
sudo pg_isready

配置

  • 切换用户到postgres进行登录
sudo su - postgres
psql

出现了postgres=#即成功登入

  • 创建数据库用户和数据库并授权(这里的参数需要自定义)
CREATE USER {USER_NAME} WITH PASSWORD {USER_PASSWD};
CREATE DATABASE {DATABASE_NAME};
GRANT ALL PRIVILEGES ON DATABASE {DATABASE_NAME} to {USER_NAME};
  • 远程控制配置
sudo vim /etc/postgresql/12/main/pg_hba.conf
  • 配置完成后重启服务
sudo systemctl restart postgresql
  • 运行pgdmin4二进制软件包附带的Web设置脚本,以配置系统以Web模式运行
sudo /usr/pgadmin4/bin/setup-web.sh
  • 填入你的邮箱和设置的密码,方便以后登录。
  • 打开下列连接进入pgAdmin4SERVER_IP需要换成你服务器的ip
http://SERVER_IP/pgadmin4
  • 使用你刚刚设置的邮箱和密码登录。

  • 连接新的服务器,点击Add New Server

  • General填写Name即可

  • Connection填写Host name/address为你的服务器地址,Username改为你之前创建的数据库用户。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
PostgreSQL是一种开源的关系型数据库管理系统,可以用于构建高可用的主从架构。在搭建主从架构之前,需要先安装和配置主服务器和从服务器。 首先,安装PostgreSQL 14以及所需的依赖项。可以通过包管理工具如apt-get(适用于Ubuntu)或yum(适用于CentOS)来安装。然后,编辑主服务器(通常为生产环境)的postgresql.conf文件和从服务器(通常为备份环境)的postgresql.conf文件。 在主服务器上,配置以下参数以支持主从复制: 1. 将wal_level设置为logical或replica,这取决于目标数据库的用途。 2. 配置max_wal_senders为从服务器的最大连接数。 3. 设置max_replication_slots为从服务器的最大并发复制数。 4. 启用archive_mode并设置archive_command以将WAL(Write-Ahead Log)日志归档到指定的位置,以便从服务器能够访问归档文件。 在从服务器上,配置以下参数: 1. 将primary_conninfo设置为主服务器的连接信息,包括主服务器的主机名、端口、用户名和密码。 2. 设置standby_mode为on以启用从服务器的备份模式。 3. 配置primary_slot_name为从服务器的复制槽名称。 完成配置后,启动主服务器和从服务器,并确保主服务器和从服务器能够相互访问。由于主服务器会在WAL日志中记录所有更改,从服务器可以通过复制这些日志来保持数据的一致性。 在主服务器上创建复制用户并授予复制权限,以便从服务器可以连接并复制数据。然后,在从服务器上创建复制槽,并启动复制进程。 一旦主从复制建立起来,从服务器将会持续地从主服务器接收和应用WAL日志,以保持与主服务器的数据同步。在主服务器发生故障时,可以通过切换从服务器为新的主服务器来维持服务的连续性。 总结来说,PostgreSQL 14主从搭建需要通过配置主服务器和从服务器的参数,并确保数据的复制和同步。通过确保主从服务器之间的连接和相应的权限配置,可以实现高可用性和数据备份。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值