[转帖]人大金仓数据库的备份与还原

人大,数据库,备份,还原 · 浏览次数 : 0

小编点评

**文章目录** 1. 从人大金仓数据库备份还原到人大金仓数据库 2. 从postgresql数据库备份还原到人大金仓数据库 3. 前言 4. 1. 从人大金仓数据库备份还原到人大金仓数据库 5. 2. 从postgresql数据库备份还原到人大金仓数据库 6. 二 从postgresql数据库备份还原到人大金仓数据库 7. 后记

正文

人大金仓数据库的备份与还原

前言

本文记录一次使用人大金仓数据库(KingbaseES)(postgres版)的备份与还原。

postgresql 版本:11.5
人大金仓数据库版本:KingbaseES V8R6

备份

sys_dump 命令

./sys_dump -h 10.10.3.104 -p 54321 -d “hrmww” -U postgres -f /u01/apps/csk.dmp

还原

ksql 命令

ksql -U postgres -d hrmww -p 54321 -f /u01/apps/dum3p.dmp

sys_restore

.
/sys_restore -username “postgres” --role “postgres” --dbname “hrmwv2_hlw” /u01/apps/dum3p.dmp

一. 从人大金仓数据库备份还原到人大金仓数据库

  1. 人大金仓数据库备份

人大金仓数据库sys_dump命令不能直接执行,需要进到人大金仓数据库目录下的Server/bin下执行,我的目录:

 [root@Kingbase-zookeeper-01 bin]# pwd
/u01/apps/Kingbase/Server/bin

    执行命令:

    ./sys_dump -h 0.0.0.100 -p 54321 -d "数据库名"  -U postgres  -f /u01/apps/csk1.dmp
    

      在这里插入图片描述

      这样是不打日志的,想要他打日志需要重定向一下。

      命令如下:

      ./sys_dump -h 0.0.0.100 -p 54321 -d "数据库名"  -U postgres  -f /u01/apps/csk1.dmp  >> /u01/日志.txt  2>&1
      

        2.还原人大金仓数据库

        创建一个新的数据库"cscs"用于还原

          CREATE DATABASE "cscs"
        WITH
          OWNER = "postgres"
          ENCODING = 'UTF8'
        ;
        

          我们先用官方说的sys_restore命令还原:

          进到人大金仓数据库目录下的Server/bin下执行,如果不指定目录,或进到目录下

          ./sys_restore -username "postgres" --role "postgres" --dbname "cscs"  /u01/apps/csk3.dmp >> /u01/日志.txt  2>&1
          

            查看报错:

            sys_restore: error: input file appears to be a text format dump. Please use ksql.
            sys_restore: error: input file appears to be a text format dump. Please use ksql.
            

              显示不支持此格式,只支持dump格式,建议用ksql命令:

              那咱们换换格式试一试

              还是先备份

              ./sys_dump -h 0.0.0.100 -p 54321 -d "数据库名"  -U postgres  -f /u01/apps/csk12.dump  >> /u01/日志.txt  2>&1
              

                再还原试试

                ./sys_restore -username "postgres" --role "postgres" --dbname "cscs"  /u01/apps/csk12.dump >> /u01/日志.txt  2>&1
                

                  结果还是不行。
                  使用ksql 还原

                  ./ksql -U postgres -h "0.0.0.0"  -d cscs -p 54321 -f /u01/apps/csk3.dmp >> /u01/日志.txt  2>&1 
                  

                    结果发现没有问题 ,可以还原。
                    报错及详情可以在/u01/日志.txt 中查看。

                    我想了想那个报错是不是以为我没有采用压缩格式备份导致的,这次加上 --format=c 参数试试,看看有啥问题 。
                    备份命令:

                    ./sys_dump -h 0.0.0.104 -p 54321 -d "数据库名" --format=c  -U postgres  -f /u01/apps/csk15.dump  >> /u01/日志.txt  2>&1
                    

                      还原命令:
                      ./sys_restore -h “10.10.3.104” -p “54321” -U postgres --role “postgres” --dbname “cs” /u01/apps/csk15.dump >> /u01/日志.txt 2>&1
                      结果:
                      还原成功了
                      报错及详情可以在/u01/日志.txt 中查看。

                      二 从postgresql数据库备份还原到人大金仓数据库

                      由于人大金仓数据库数据库pg版是基于pg开发的,那pg的一些功能人大金仓数据库也能用
                      pg还原是用了copy命令,而人大金仓也支持copy命令。那我们能不能用pg_dump和人大金仓的ksql来进行还原数据库呢?

                      现在pg数据库进行备份,由于不能采用压缩的形式来备份,备份文件的大小跟数据库差不多,需要注意空间大小。
                      在pg服务器下执行;

                      pg_dump --file "/u01/pgsql.sql" --host "0.0.0.12" --port "5432" --username "postgres" --dbname "数据库名"  --verbose --role "postgres"  --encoding "UTF8"
                      
                      • 1

                      把备份文件传输到人大金仓数据库的服务器上,用ksql命令执行:

                      ./ksql -U postgres -d hrmwv2_hlw -p 54321 -f /u01/pgsql.sql >> /u01/日志.txt 2>&1

                      结果可以执行成功。
                      报错及详情可以在/u01/日志.txt 中查看。

                      这里需要注意 fdw无法还原 ,以及一些外部链接都不会还原

                      后记

                      如果本文章有何错误,请您评论中指出,或联系我,我会改正,如果您觉得这篇文章有用,请帮忙一键三连,让更多的人看见,谢谢
                      作者 yang_z_1 csdn博客地址: https://blog.csdn.net/yang_z_1?type=blog

                      文章知识点与官方知识档案匹配,可进一步学习相关知识
                      PostgreSQL技能树首页概览5277 人正在系统学习中

                      与[转帖]人大金仓数据库的备份与还原相似的内容:

                      [转帖]人大金仓数据库的备份与还原

                      人大金仓数据库的备份与还原 文章目录 人大金仓数据库的备份与还原前言备份sys_dump 命令 还原ksql 命令sys_restore 一. 从人大金仓数据库备份还原到人大金仓数据库二 从postgresql数据库备份还原到人大金仓数据库 后记 前言 本文记录一次使用人大金仓数据库(Kingbas

                      [转帖]人大金仓数据库的用户与角色

                      数据库的表、索引、视图等,在数据库中的一切都可以称为数据库对象。 对象分为以下两类 模式(SCHEMA)对象:可视为一个表的集合,可以理解为一个存储目录,包含视图、索引、数据类型、函数和操作符等。非模式对象:其他的数据库对象。如数据库、表空间、用户、权限。 查看当前用户在数据库中拥有的权限 \l 查

                      [转帖]人大金仓数据库分区表

                      分区表 声明式创建分区 按列创建分区(PARTITION BY LIST) 将学员表student按所在城市使用partition by list创建分区 创建分区表(基表) 创建格式 create table 表名(字段名 数据类型)PARTITION BY LIST(要分区的字段名) 创建子分区

                      [转帖]国产数据库到底行不行?人大金仓KINGBASE数据库与主流开源数据库性能实测

                      近年来,人大金仓的数据库产品受到了外界诸多的关注。做产品,免不了要接受用户的对比和选择,数据库因其行业的自身特点,还有很多开源的技术产品同台比拼,用户因此也会产生诸多疑问,国产数据库相比开源数据库到底如何,今天我们选择数据库的一项核心能力——性能,将金仓KingbaseES和目前业界主流的两种开源数

                      [转帖]炫“库”行动—人大金仓有奖征文——金仓分析型数据库系统执行计划生成和查看

                      【本文正在参与炫“库”行动—人大金仓有奖征文】 人大金仓有奖征文 (csdn.net)https://bss.csdn.net/m/topic/kingbase 一、执行计划生成 EXPLAIN和EXPLAIN ANALYZE是金仓分析型数据库系统优化性能的工具。EXPLAIN会为查询显示其查询计划

                      [转帖]人大金仓和PG的关系

                      作者:山抹微云链接:https://www.zhihu.com/question/582960448/answer/2997151260来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 只针对人大金仓的集中式关系数据库kes86: 结论:kes86应该是人大金仓对pg进

                      [转帖]人大金仓- KWR 报告初体验

                      【本文正在参与炫"库"行动-人大金仓有奖征文】 开发者请集结丨炫“库”行动——2021人大金仓征文大赛悬赏万元等你来! 最近一直在研究 Oracle 的 AWR 报告,觉得它功能很强大,尤其是 DB Time 模型和等待事件能够让性问题的分析变得十分方便,再也不需要依赖大量的运维脚本去分析和定位问题

                      [转帖]人大金仓修改最大连接数

                      https://www.cnblogs.com/darcy-hui/p/13212108.html#:~:text=%E4%BA%BA%E5%A4%A7%E9%87%91%E4%BB%93%E4%BF%AE%E6%94%B9%E6%9C%80%E5%A4%A7%E8%BF%9E%E6%8E%A5%E

                      [转帖]kingbase(人大金仓)的一些常用表操作语句

                      包括 1)创建表 2)删除表 3)加字段 4)字段换名 5)字段改类型 6)字段添加注释 7)修改字段为自增类型 8)增加主键 9)查看模式下的表 一、创建和删除表 DROP TABLE IF EXISTS "DZ_RAIN" CASCADE; CREATE TABLE "DZ_RAIN" ( "I

                      [转帖]人间终极定律,熵增定律

                      https://www.cnblogs.com/zhoading/p/17115776.html 人活着就是在对抗熵增定律。 ——薛定谔《生命是什么》 一 这个世界上所有的定律,都可以说是废话,都可以是多余的,但唯独“熵 [shāng] 增定律”是人类不可多得的价值总结。 “熵增定律”也是自然界至高