PostgreSQL备份还原数据库
PostgreSQL数据库备份和还原教程
1.切换PostgreSQL bin目录
配置Postgresql环境变量后可以不用切换
pg_dump 、psql都在postgresql bin目录下,所以需要切换到bin目录执行命令
2.备份数据库
方式一
语法
pg_dump -h <ip> -U <pg_username> -p <port> -d <databaseName> -f <fileName>
示例
pg_dump -h 127.0.0.1 -U postgres -p 9993 -d ceshi -f E:/tmp/ceshi.sql
执行完毕后需要手动输入密码
说明:
参数 【-t 】是备份某一个表,可以用多个-t参数来导出多张表 -t a -t b -t c
参数【-h】 指定服务器ip
参数【-p】 指定服务器端口号
参数【-U】 指定数据库用户名
参数【-d】指定数据库名称
参数【-f】指定备份文件的路径和文件名
参数 【-c 】--clean 在重新创建之前,先清除(删除)数据库对象
参数 【-s 】只备份数据表结构
方式二
语法
pg_dump -f <fileName> "host=<ip> port=<port> user=<pg_username> password=<password> dbname=<databaseName> "
示例
pg_dump -f E:/tmp/20220411/ceshi.sql "host=127.0.0.1 port=5432 user=postgres password=123456 dbname=ceshi"
执行完毕后无需手动输入密码
说明: 方式二执行命令后需要输入密码
参数 【-t 】是备份某一个表,可以用多个-t参数来导出多张表 -t a -t b -t c
参数【-h】 指定服务器ip
参数【-p】 指定服务器端口号
参数【-U】 指定数据库用户名
参数【password】制定数据库密码
参数【-d】指定数据库名称
参数【-f】指定备份文件的路径和文件名,可以替换为
参数 【-c 】--clean 在重新创建之前,先清除(删除)数据库对象
参数 【-s 】只备份数据表结构
3. 创建新数据库
- 客户端连接postgresql
- 删除原来的数据库 drop database testdb;
- 创建新的数据库 create database testdb TEMPLATE = template0 ENCODING 'UTF8' ;
4. 还原数据库
切换到PostgreSQL bin目录,打开命令行,执行下面的命令
方式一
语法
psql -h <ip> -U <pg_username> -p =<port> -d <databaseName> -f <fileName>
示例
psql -h 127.0.0.1 -U postgres -p 9993 -d ceshi -f E:/tmp/ceshi.sql
执行命令后需要输入密码
说明:
参数【-h】 指定服务器ip
参数【-p】 指定服务器端口号
参数【-U】 指定数据库用户名
参数【-d】指定数据库名称
E:/tmp/packbiv5.sql :为备份的数据库目录和备份的文件名称
方式二
语法
psql "host=<ip> port=<port> user=<pg_username> password=<password> dbname=<databaseName> " -f <fileName>
示例
psql "host=127.0.0.1 port=5432 user=postgres password=123456 dbname=ceshi " -f E:/tmp/ceshi.sql
psql -h 127.0.0.1 -U postgres -p 9993 -d packbiv5 <E:/tmp/packbiv5.sql
说明: 方式二执行命令后需要输入密码
参数【-h】 指定服务器ip
参数【-p】 指定服务器端口号
参数【-U】 指定数据库用户名
参数【-d】指定数据库名称
参数【-f】指定备份文件的路径和文件名
参数【password】制定数据库密码
5.完毕
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)