IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> 人大金仓数据库的备份与还原 KingbaseES V8R6 -> 正文阅读

[大数据]人大金仓数据库的备份与还原 KingbaseES V8R6

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

前言

本文记录一次使用人大金仓数据库(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"

把备份文件传输到人大金仓数据库的服务器上,用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

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2022-05-03 09:25:32  更:2022-05-03 09:25:43 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 1:32:00-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码