Neo4j 数据库管理 数据备份与恢复(头歌)

news2024/11/23 11:40:40

文章目录

  • 第1关:数据备份与恢复
    • 任务描述
    • 相关知识
      • 数据备份
      • 数据导入
    • 编程要求
    • 测试说明
    • 答案
      • 测试前准备
      • Cypher 代码
      • 数据备份与导入

第1关:数据备份与恢复

任务描述

本关任务:熟练掌握数据备份与恢复。

相关知识

为了完成本关任务,你需要掌握:

  1. 数据备份;
  2. 数据导入。

注意: 在进行数据导入与备份时需要将 neo4j 停止。

img

导入失败

数据备份

需要先将 neo4j 服务关闭:neo4j stop

数据备份需要放在一个存在的文件夹中,所以我们在备份时需要检测备份位置是否存在。

备份代码: neo4j-admin dump --database=graph.db --to=/neo4j/backup/graph_backup.dump

  • 代码解释: dump(备份数据);

--database=需要备份的数据库

--to=备份文件的位置

img

备份成功

数据导入

我们也需要先将 neo4j 服务关闭:neo4j stop

数据导入代码: neo4j-admin load --from=/neo4j/backup/graph_backup.dump --database=graph.db --force

  • 代码解释: load(导入数据);

--from=备份文件位置

--database=导入的数据库位置

--force(将数据推入到数据库中)。

img

导入成功

编程要求

根据提示,在图形界面操作:

  1. 创建两个节点,节点标签为:work,节点属性为:name,属性值为:xiaohuxiaoli
  2. 将上面创建的节点数据备份为:/root/backup/graph_backup.dump
  3. 导入备份文件,文件位置为:/data/workspace/myshixun/step1/backup/graph.dump

测试说明

平台会对你编写的代码进行测试: 注意: 评测前,需检查 Neo4j 服务是否开启。

测试输入:; 预期输出:

查询导入数据:
n
(:test {name: "champion"})
(:test {name: "S12"})
(:test {name: "oneDay"})
查询备份文件的数据:
n
(:work {name: "xiaohu"})
(:work {name: "xiaoli"})

答案

测试前准备

bashrc 文件定义了 neo4j-4.x 版本的环境变量,而JDK 版本是 1.8.201,所以需要换成 neo4j-3.x(应该是出题者的失误下错版本了又忘记把这个环境变量删掉),这里删掉或者换成3.x的文件路径,否则 neo4j、neo4j-admin 等命令无法使用

# 修改 Bash Shell 在启动时加载的配置文件
vim ~/.bashrc
# 把最后两行删了之后,重新启动终端

# 更新配置文件
source /etc/profile

# 启动 Neo4j
neo4j start

# 编辑 Cypher 代码
vim 1.cypher

Cypher 代码

create(:work {name: "xiaohu"})
create(:work {name: "xiaoli"})

数据备份与导入

# 启动脚本创建节点
cat 1.cypher | cypher-shell -u neo4j -p 123456 --format plain

# 将 neo4j 服务关闭
neo4j stop

# 创建目录 backup 用于数据备份
mkdir /root/backup

# 数据备份
neo4j-admin dump --database=graph.db --to=/root/backup/graph_backup.dump

# 数据导入
neo4j-admin load --from=/data/workspace/myshixun/step1/backup/graph.dump --database=graph.db --force

# 启动 Neo4j
neo4j start

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1273902.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Jvm常见问题

1. 为什么用元空间替换永久代 避免OOM异常:永久代中存放了很多JVM需要的类信息,这些数据大多数是不会被清理的,所以Full GC往往无法回收多少空间。但在元空间模型中,由于字符串常量池已移至堆外,且元空间的大小不受JV…

Elasticsearch:使用 ILM 示例运行降采样 (downsampling)

如果你对降采样还不是很熟的话,请阅读之前的文章 “Elasticsearch:对时间序列数据流进行降采样(downsampling)”。这是一个简化的示例,可让你快速了解降采样如何作为 ILM 策略的一部分来减少一组采样指标的存储大小。 该示例使用典…

LeetCode | 二叉树的最大深度

LeetCode | 二叉树的最大深度 OJ链接 这里需要注意的一点是每次有返回值,需要定义变量来保存上一次的值最后取最高的一方加1 int maxDepth(struct TreeNode* root) {if(root NULL)return NULL;int left maxDepth(root->left);int right maxDepth(root->r…

C语言中一些有关字符串的常见函数的使用及模拟实现(1)

在编程的过程中,我们经常要处理字符和字符串,为了⽅便操作字符和字符串,C语⾔标准库中提供了 ⼀系列库函数,接下来我们就学习⼀下这些函数。 文章目录 strlen函数的使用及模拟实现strcmp函数的使用及模拟实现strcpy函数的使用及代…

《C++PrimerPlus》第9章 内存模型和名称空间

9.1 单独编译 Visual Studio中新建头文件和源代码 通过解决方案资源管理器,如图所示: 分成三部分的程序(直角坐标转换为极坐标) 头文件coordin.h #ifndef __COORDIN_H__ // 如果没有被定义过 #define __COORDIN_H__struct pola…

阅读文献总结2023

阅读文献基于卷积神经网络多源融合的网络安全态势感知模型 阅读文献 基于卷积神经网络多源融合的网络安全态势感知模型 题目基于卷积神经网络多源融合的网络安全态势感知模型文章信息:年份2023发文单位山西财经大学收录刊会计算机科学 (北大核心&#…

和鲸科技与国科环宇建立战略合作伙伴关系,以软硬件一体化解决方案促进科技创新

近日,在国科环宇土星云算力服务器产品发布会暨合作伙伴年度会上,和鲸科技与国科环宇正式完成战略伙伴签约仪式,宣布达成战略合作伙伴关系。未来,双方将深化合作,充分发挥在产品和市场方面的互补优势,为企事…

el-table实现动态表头

1.1el-table渲染 <el-tableref"refreshTable":data"tableData"highlight-current-row><el-table-columnfixedwidth"170px"label"测点"align"center"prop"测站名称"/><el-table-column label"…

echarts实现3D柱状图

效果如图 let setData function(data, constData, showData) {data.filter(function(item) {if (item) {constData.push(1);showData.push(item);} else {constData.push(0);showData.push({value: 1,itemStyle: {normal: {borderColor: "rgba(0,0,0,0)",borderWidt…

中信建投在金融电于化期刊发布 DataOps 实践

文 ‖ 中信建投证券股份有限公司 马丽霞 高宇航 李可 许哲 李海伟 近年来&#xff0c;数据的分析和应用对各行各工业的业务模式和竞争形态进行重塑&#xff0c;而积极应对挑战和顺应时代变化是各个市场参与者的必选项。作为资本市场数字化转型的领航者&#xff0c;中信建投证券…

react-flip-move结合array-move实现前端列表置顶效果

你有没有遇到这样的需求&#xff1f;点击左侧列表项&#xff0c;则像聊天会话窗口一样将被点击的列表项置顶。 如果只是单纯的置顶的话&#xff0c;直接使用array-move就可以实现了&#xff0c;但置顶效果多少有点突兀~ 先上代码&#xff0c;直接使用array-move的情况&#xf…

11-30 SpringBoot2

热部署 开发过程中,修改代码,不需要重启,自动更新 项目上线,一定要关闭 SpringBoot热部署的实现&#xff1f;&#xff1f; ideal默认阻止class类更新 2&#xff0e;需要手动构建项目&#xff0c;可以使用快捷键激活此功能ctrl F9 / build project 自动构建项目 允许程序运行…

rabbitMQ镜像队列的使用

在rabbitMQ集群中&#xff0c;默认发送消息时&#xff0c;队列默认时在一个节点上存在的。 我们以node01 node02 node03三节点集群为例&#xff0c;在node01声明队列发送消息后&#xff0c;发现&#xff1a; 测试队列只在节点node01上出现。 我们手动停止node01后&#xff0c…

Vue大屏自适应终极解决方案

v-scale-screenv-scale-screen是一个大屏自适应组件&#xff0c;在实际业务中&#xff0c;我们常用图表来做数据统计&#xff0c;数据展示&#xff0c;数据可视化等比较直观的方式来达到一目了然的数据查看&#xff0c;但在大屏开发过程中&#xff0c;常会因为适配不同屏幕而感…

Redis7--基础篇4(Redis事务)

Redis事务是什么 可以一次执行多个命令&#xff0c;本质是一组命令的集合&#xff0c;一个事务中的所有命令都会序列化&#xff0c;按顺序串行&#xff0c;而不会被其他命令插入。 其作用就是在一个队列中&#xff0c;一次性、顺序、排他的执行一系列命令。 Redis事务 VS 数据…

华为云cce负载配置时间同步

华为云cce将负载配置好之后&#xff0c;发现里面的时间与真实时间不同步&#xff0c;差了12小时&#xff0c;怎么办&#xff1f; 这时候就需要配置时间同步了。 华为云cce里面通过配置数据存储的路径来解决这个问题的&#xff0c;配置后&#xff0c;需要重启负载。 新建负载…

Java中的synchronized关键字

目录 1、synchronized是什么 2、synchronized的用法 synchronized可以用在方法或者代码块上&#xff0c;分别称为同步方法和同步代码块。 用法理解 3、synchronized的实现原理 ⭐synchronized锁的对比 4、synchronized的优缺点 ⭐扩展&#xff1a;synchronized 和 vola…

JAVA全栈开发 day15_集合(Set接口、增强For循环、Map体系)

一、增加for遍历集合 语法&#xff1a; for(数据类型 变量名: 数组名或集合){​ }//集合遍历 &#xff0c;推荐使用增加for 1.静态导入 注意事项&#xff1a; 方法必须是静态注意不要和本类的方法同名&#xff0c;如果同名&#xff0c;记得加前缀&#xff0c;由此可…

vue中.sync修饰符与$emit(update:xxx)双向数据绑定

文章目录 一、单向数据流二、props父子传值2.1、父组件2.2、子组件2.3、优缺点2.3.1、优点2.3.2、缺点 三、.sync修饰符双向绑定3.1、父组件3.2、子组件3.3、优缺点3.3.1、优点3.3.2、缺点 3.4、[文档](https://v2.cn.vuejs.org/v2/guide/components-custom-events.html#sync-%…

【快速见刊|投稿优惠】2024年机电一体与自动化技术国际学术会议(IACMAT 2024)

2024年机电一体与自动化技术国际学术会议(IACMAT 2024) 2024 International Academic Conference on Mechatronics and Automation Technology(IACMAT 2024) 一【会议简介】 2024年机电一体与自动化技术国际学术会议(IACMAT 2024)即将召开&#xff0c;它以“机电一体&#xff0…