当前位置: 首页 > news >正文

PostgreSQL实战-数据库迁移部署

PostgreSQL实战-数据库迁移部署

介绍

根据项目需求,我们需要将现有的PostgreSQL数据库重新部署到新的服务器上。由于项目本身就是基于PostgreSQL数据库构建的,因此数据库迁移将变得十分便捷。接下来,我将简要介绍我们的迁移步骤。

迁移步骤

备份原数据库

数据库安装的过程我这里就不介绍了,可以看看我之前的文章

这里我使用pg_dump命令工具进行数据库的备份,数据库工具在PostgreSQL的安装目录下,我的系统是centos7,安装目录在:

/usr/pgsql-13/bin

image-20230725194410857

备份命令如下:

# 根据自己的实际情况进行修改
./pg_dump -U postgres -p 5432 db > /data/pgdata/db.backup

还原新数据库

还原数据库之前,需要先创建新的数据库,这里是db_new

这里我使用psql命令工具进行数据库的还原

还原命令如下:

# 根据自己的实际情况进行修改
./psql -U postgres -p 5432 -d db_new < /data/pgdata/db.backup

清空还原相关表

我这里是新部署系统,所以数据库中部分表的数据是需要清除的,并且要还原排序的id。

这里我以一个日志记录表为例进行演示。

删除表中的所有数据

使用DELETE FROM语句来删除表中的所有记录。请注意,这将删除表中的所有数据,但不会重置自增ID的计数。

DELETE FROM bis_log_operations;

重置自增ID计数

为了重置自增ID的计数,您需要使用TRUNCATE命令,它会将表截断并重新开始计数。

TRUNCATE TABLE bis_log_operations RESTART IDENTITY;

注意事项

执行此操作会将表截断,并且所有数据将被永久删除,而且自增ID将从1开始重新计数。请务必在执行之前备份重要的数据,以免数据丢失。

请注意,这里假设您拥有足够的权限来执行这些操作。在进行任何更改之前,最好在生产环境之外的测试环境中进行测试,以确保操作正确且不会导致数据丢失。

http://www.lryc.cn/news/97440.html

相关文章:

  • PHP数据库
  • Mybatis的基本操作--增删改查
  • Qt简单实现密码器控件
  • fpga_pwm呼吸灯(EP4CE6F17C8)
  • WPF实战学习笔记20-设置首页启动页
  • uniapp实现预约时间选择弹窗组件
  • opencv 之 外接多边形(矩形、圆、三角形、椭圆、多边形)使用详解
  • 断路器分合闸速断试验
  • 【Redis】如何实现一个合格的分布式锁
  • 组件化开发复习
  • 【设计模式】设计原则-里氏替换原则
  • v2ex站点base64编码解码
  • PostgreSQL数据库动态共享内存管理器——Dynamic shared memory areas
  • Redission分布式锁详解
  • 063、故障处理之快速恢复数据
  • 从零开始学习CTF
  • 【stable diffusion】保姆级入门课程05-Stable diffusion(SD)图生图-涂鸦重绘的用法
  • HBase 源码编译部署包
  • 备战秋招 | 笔试强训16
  • 01 Excel常用高频快捷键汇总
  • PHP Laravel 路由、中间件、数据库等例子
  • Unity小游戏——使被砍中的怪物四处飞散
  • hive之文件格式与压缩
  • 云原生容器内的一次pg_repack排错和解决过程
  • Centos Certbot 使用
  • VL163的基本信息
  • IntelliJ IDEA 2023.2 新版本,拥抱 AI
  • softmax回归
  • .NET 8 Preview 5推出!
  • Spring核心概念、IoC和DI的认识、Spring中bean的配置及实例化、bean的生命周期