postgresql数据库备份
Ⅰ 如何在Postgresql中备份和恢复一张表
使用pg_mp进行单独表备份,且包含表结构,可以用于数据表迁移到新数据库。
pg_mp -U database_username database -t tablename -f /tmp/tablename.sql
恢复数据表,包含表结构。
登入数据库后 \i /tmp/tablename.sql即可创建表。应该pg_restore也可用但没有尝试过。
Ⅱ 如何在PostgreSQL中备份一张表(包含表结构)和恢复
pg_mp
-u
database_username
database
-t
tablename
-f
/tmp/tablename.sql恢袭胡复数据表,包含表结构。登入数据库后
\i
/tmp/tablename.sql即可创建表。注意此方式恢复在恢复已有表时可能会提示错误表已经存在,但应该无大碍孝辩,备份时可以尝巧禅缺试只备份数据
Ⅲ 如何在PostgreSQL中备份一张表(包含表结构)和恢复
--以test作为用户名,导出localhost:5432服务器上的Test数据库。
--导出的文件名为test_data
F:PostgreSQL9.2in>pg_mp-ftest_data-hlocalhost-Utest-p5432Test
口令:
F:PostgreSQL9.2in>dirtest_*
驱动器F中的卷是Install
卷的序列号是24AD-61D9
F:PostgreSQL9.2in的目录
2013-04-1514:46136,270test_data
1个文件136,270字节
0个目录10,456,657,920可用字节--将test_data文件中的数据,导入到localhost:5432服务器上的Test2数据库。
F:PostgreSQL9.2in>psql.exe-hlocalhost-Utest-p5432-dTest2<test_data
用户test的口令:test
SET
SET
SET
SET
SET
CREATESCHEMA
ALTERSCHEMA
CREATEEXTENSION
COMMENT
CREATEEXTENSION
COMMENT
......
上面的例子, 是 备份 / 恢复整个数据库的.
如果你是要 仅仅 备份 / 恢复 某个表的, 那么命令行里面增加下面的参数:
-t, --table=TABLE 只转储指定名称的表
Ⅳ postgresql 数据库有 用sql语句备份的方法吗
(1)将PostgreSQL数据库的psql工具所在的路径添加到系统的环境变量中;
(2)运行cmd,在窗口中输入psql,会有提示输入口令的信息,按ctrl+c终止该命令;
(3)建立与服务器的链接,具体格式:psql -h 服务器IP地址 -U 数据库连接用户名 -d 数据库名称 -p 端口号;(比如:psql -h 192.168.9.202 -U postgres -d luoyang -p 5432),链接成功的话会出现:“数据库名称=#”格式的提示(luoyang=#);
(4)修改数据库中导出数据的编码格式为gbk,指令:\encoding gbk;(输入\encoding可以查看数据库的编码格式,gbk编码方式保证导出的中文汉字不为乱码)
(5)导出数据表中的数据为csv格式文件,指令:\ 表名 to 路径 with csv(比如:\ tbl_user_info to 'C:/user.csv' with csv,成功后在C盘根目录下就会有相应的csv文件
Ⅳ navicat 怎么备份数据库
Navicat | 关于备份和还原
一个安全和可靠的服务器是与定期运行备份有密切的关系,因为由攻击、硬体故障、人为错误、电力中断等引致的错误
有可能随时发生。
Navicat 为用户提供一个内置备份和还原工具用于备份或还原 MySQL、PostgreSQL、SQLite 和 MariaDB 数据库对
象。对于 Oracle、SQL Server 和 MongoDB,用户可以使用以下的功能。
• Oracle 数据泵
• SQL Server 备份和还原
• MongoDump 和 MongoRestore
内置备份和还原工具(仅适用于非 Essentials 版)
关于内置备份和还原工具
内置备份和还原工具让你备份或还原你数据库内的对象。你可以将设置保存为一个配置文件以供将来使用或用作设置自
动运行任务。在主窗口中,点击 “备份”来打开备份的对象列表。
【提示】备份文件保存于设置位置。若要打开该文件夹,请右键单击备份文件,然后选择“打开所在的文件夹”。
【注意】仅适用于 MySQL、PostgreSQL、SQLite 和 MariaDB。
具体内容去官网下载用户手册。
Ⅵ 关闭fullpagewrite导致数据错误
PG默认每个page的大小为8K,PG数据页写入是以page为单位,但是在断电等情况下,敏脊操作系统往往不能保证单个page原子地写入磁盘,这样就极有可能导致部分数据块只写到4K(操作系统是一般以4K为单位),这些“部分写”的页面包含新旧数据的混合。在崩溃后的恢复期间,xlog 里面存储的记录变化信息不够完整,无法完全恢复该页。PG为了解决这类问题,full_page_write机制孕育而生。
PostgreSQL 在 checkpoint 之后在对数据页面的第一次写的时候会将整个数据页面写到 xlog 里面。当出现主机断电或者OS崩溃时,redo操作时通过checksum发现“部分写”的数据页,并将xlog中保存的这个完整数据页覆盖当前损坏的数据页,然后再继续redo就可以恢复整个数据库了。
除了能够解决腊激断电等带来坏数据页问题外,full_page_write 还应用在在线备份功能上。PG进行全量备份数据库一般通过pg_basebackup工具实现,pg_basebackup类似于操作,在此期间,也会出现部分数据页写到一半时文件被走了,正是因为full_page_write存在,备份出来的数据库才可以成功恢复启动。所以即便full_page_write=off,在备份时也会被强制自动打开,保证备份成功。
实现原理
full_page_write主要在XLogInsert(插入一条xlog记录)时桥局渗发挥作用,通过full_page_writer开关状态以及是否是checkpoint后对数据页面的第一次修改(lsn<RedoRecPtr)判断是否需要备份数据页。如果需要备份,那么则把数据页存放在这条记录的末尾,最终写入到xlog中。
Ⅶ java备份postgresql
使用脚本来备份
java中,使用Runtime.exec执行脚本
cd C:\PostgreSQL\8.2\bin\clspg_mp -U postgres -d gd_2013 -t gd_cmcc > d:\gd_2013_cmcc.backup不写脚本,直接运行,应该也是可以的。
Ⅷ pgsql归档日志作用
答:pgsql归档日志作用是为神孙了数据库能够使用全量备份和备份弊绝产生的归档日志,从而让数据游卜链库回到过去的任一时间点
Ⅸ postgresql的64位数据库怎么备份才能恢复到32位数据库中
pg的64位备份到32位,将数据备份为sql格式的备份文件,然后还原到32位的数据库就可以了,或者通过第三方工具进行数据迁移,不如kettle