PostgreSQL实战-数据库迁移部署
介绍
根据项目需求,我们需要将现有的PostgreSQL数据库重新部署到新的服务器上。由于项目本身就是基于PostgreSQL数据库构建的,因此数据库迁移将变得十分便捷。接下来,我将简要介绍我们的迁移步骤。
迁移步骤
备份原数据库
数据库安装的过程我这里就不介绍了,可以看看我之前的文章
这里我使用pg_dump命令工具进行数据库的备份,数据库工具在PostgreSQL的安装目录下,我的系统是centos7,安装目录在:
/usr/pgsql-13/bin
备份命令如下:
# 根据自己的实际情况进行修改
./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开始重新计数。请务必在执行之前备份重要的数据,以免数据丢失。
请注意,这里假设您拥有足够的权限来执行这些操作。在进行任何更改之前,最好在生产环境之外的测试环境中进行测试,以确保操作正确且不会导致数据丢失。