postgresql批量备份和恢复数据表
备份数据库:
pg_dump -h localhost -U root demo02 > /home/arno/dumps/demo02.bak
恢复数据库:
psql -h localhost -U root -d demo < demo.bak
备份表:
pg_dump -h localhost -U root demo02 -t books > /home/arno/dumps/books.bak
恢复表:
psql -h localhost -U root -d demo -t books < /home/arno/dumps/books.bak
psql copy to/from用法:
1. 需要使用postgres超级用户登陆数据库
psql -U postgres -d demo02
2. 保存/读取的文件夹需要赋予postgres用户可读写的权限
3. 导出表中数据到文件
copy books to '/opt/PostgreSQL/9.5/data/xxx.csv' with CSV;
4. 导入文件内容到数据库(增加不是覆盖,以前表中数据保留)
copy books(id,title) from '/opt/PostgreSQL/9.5/data/xxx.csv' delimiter as ',' csv ;
以上参考网址:
https://my.oschina.net/bianweiall/blog/516604
https://www.cnblogs.com/alianbog/p/5621660.html
https://www.cnblogs.com/chjbbs/p/6480687.html
注意:
1,该命令是在dos窗口执行的,而且需要定位到命令所在的文件夹,比如我的psql命令是在F:\install\postgre9.4.5\bin。F:\install\postgre9.4.5是我的数据库的安装路径。
2,低版本的数据库不能对高版本的数据库进行备份和还原操作,因此有可能需要对自己的数据库进行升级(我是重装数据库,因为我的数据库中没什么数据,所以懒得备份,实际中你们可以按照前面的命令进行数据库的备份,然后重装)。
3,在使用copy命令的时候需要先登录数据库,因为copy命令是数据库自带的命令,而且在copy的末尾,一定要加分号,默认是以分号结束。
4,导入文件时原表需要存在,表结构需要完整,导入数据只是导入数据内容,并不会创建表结构,而且导入的时候是以追加的方式,并不会覆盖表中原来的数据。
5,使用psql恢复数据时,如果数据库中有相同的表格,那么会以追加的形式恢复数据,但是会提示2个ERROR,一个表示的是原表存在,另一个表示的是只能有一个主键(前提是设置了主键)。
但是通过查看数据库可以知道,即使报错,数据也可以恢复成功。
这几点是我在实际操作过程中遇到的问题,希望对大家有帮助。
另外,也可以使用navicat进行数据库的迁移,但是不能对单独的数据表进行操作。
postgresql批量备份和恢复数据表的更多相关文章
- PostgreSQL备份和恢复数据表
备份数据表: pg_dump -U user_name db_name -t table_name -f /tmp/backup_file.suffix 恢复数据表: 方法1: 登录数据库:\i /t ...
- Oracle 备份、恢复单表或多表数据步骤
Oracle 备份.恢复单表或多表数据步骤,适用于 Oracle 8.9.10. *备份单表或多表数据: exp user/password@server file=filefullpa ...
- PostgreSQL的备份和恢复
关于PostgreSQL的备份和恢复详细信息请参阅<PostgreSQL中文文档>. 备份: #pg_dump --username=postgres v70_demo > v70_ ...
- postgresql数据库备份和恢复
PostgreSQL自带一个客户端pgAdmin,里面有个备份,恢复选项,也能对数据库进行备份 恢复(还原),但最近发现数据库慢慢庞大的时候,经常出错,备份的文件过程中出错的几率那是相当大,手动调节灰 ...
- mysql学习(4)-mysqldump备份和恢复数据
背景 最近在公司做数据迁移方面的工作,使用mysql数据库在测试环境模拟数据迁移,在迁移测试的过程中需要做数据备份和恢复 mysql数据备份和恢复比较简单,可以选择mysqldump工具,这里简单提一 ...
- MySql在生产环境中是用mysqldump还是xtrabackup备份和恢复数据
如题,究竟该使用mysqldump还是xtrabackup,要说用,两个都能备份,都支持热备,但是生产环境我们要考虑的是效率,就是不管备份还是恢复,都要快,要稳定. 之前我在维护mysql数据库的时候 ...
- 12 postgresql数据库备份和恢复
数据表结构备份与恢复 备份 1.找到postgres 安装目录,在找到bin文件夹,会看到一堆exe后缀的文件,用win+r 打开cmd,将pg_dump.exe 拖进cmd黑窗口中 2.基本语法:- ...
- postgresql数据库备份和恢复(超快)
PostgreSQL自带一个客户端pgAdmin,里面有个备份,恢复选项,也能对数据库进行备份 恢复(还原),但最近发现数据库慢慢庞大的时候,经常出错,备份的文件过程中出错的几率那是相当大,手动调节灰 ...
- MySQL 备份和恢复数据
备份指定数据库的全部表或指定表 mysqldump -u user -h localhost -p [password] db_name[ tbl_name[,tbl_name.......]]> ...
随机推荐
- Python列表的一点用法
#python的基本语法网上已经有很多详细的解释了,写在这里方便自己记忆一些 列表相当于python中的数组,但相对于数组,列表的操作显得更为灵活 常用的操作列表的方式: List = [1,'bl ...
- 安装numpy&pandas
https://www.scipy.org/scipylib/download.html 上述网站下载对应自己电脑版本的numpy.我的电脑是win32位,py是3.6的. 然后运行cmd,再按照如下 ...
- 添加网络打印机的步骤(xp和win2008+win7)
1.如题,设置好打印机的 ip地址和子网掩码等信息. 2 .xp不像其他新的系统那么好用那么智能...只能慢慢来 如果是xp,注意,请添加网络打印机的时候选 :添加本地打印机,,记得哦 然后如图 然 ...
- 网络编程并发 多进程 进程池,互斥锁,信号量,IO模型
进程:程序正在执行的过程,就是一个正在执行的任务,而负责执行任务的就是cpu 操作系统:操作系统就是一个协调.管理和控制计算机硬件资源和软件资源的控制程序. 操作系统的作用: 1:隐藏丑陋复杂的硬件接 ...
- git全局忽略文件
mac系统如何显示和隐藏文件 创建 ~/.gitignore_global .DS_Store __pycache__/ 配置选项 git config --global core.excludesf ...
- requests.get() 的 headers 参数
官方文档requests.get()方法的定义如下: 源码如下: 看到最后一行return,get方法最后是通过调用requests.request 方法实现的,其实在其它的请求方法如post,put ...
- [cf1038E][欧拉路]
http://codeforces.com/contest/1038/problem/E E. Maximum Matching time limit per test 2 seconds memor ...
- 如何用node命令和webpack命令传递参数 转载
1. 比如在项目中我们的publicPath需要根据服务器环境的变化而变化,这时我们会写一个配置文件,在webpack.config.js中读取,可以 如何才能 取到变量呢? 这里介绍一种方法: 如果 ...
- C# Android 开发中使用 Sqlite.NET ORM
开发环境:VS2015 Xamarin Sqlite.NET ORM 不就相当于 Entiry Framework For Xamarin 吗? 相当于用 C# 开发安卓程序访问 Sqlite 可以使 ...
- Dynamics 365 CRM Free up storage 清理Dynamics 365 CRM的空间
Dynamics 365 CRM 的空间是要买的. 但是很多情况下用户可以去清理CRM从而达到给空间减重的方法 两大使用DB空间大的功能 1. Audit log 审计记录 审计记录是用来记录各个fi ...