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

文章目录

第1关:数据备份与恢复

任务描述

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

相关知识

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

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

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

导入失败

数据备份

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

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

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

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

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

--to=备份文件的位置

备份成功

数据导入

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

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

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

--from=备份文件位置

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

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

导入成功

编程要求

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

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

测试说明

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

测试输入:; 预期输出:

sh 复制代码
查询导入数据:
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 等命令无法使用

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

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

# 启动 Neo4j
neo4j start

# 编辑 Cypher 代码
vim 1.cypher

Cypher 代码

sql 复制代码
create(:work {name: "xiaohu"})
create(:work {name: "xiaoli"})

数据备份与导入

sh 复制代码
# 启动脚本创建节点
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
相关推荐
大大大大晴天20 小时前
Hudi技术内幕:RecordPayload到RecordMerger
大数据
SelectDB1 天前
秒级弹性、最高降本 70%:SelectDB Serverless 如何重塑云数仓资源效率
大数据·后端·云原生
WhoAmI1 天前
MapReduce框架原理解析一:InputFormat
大数据·hadoop
WhoAmI1 天前
MapReduce框架原理解析三:OutputFormat
大数据·hadoop
WhoAmI1 天前
MapReduce框架原理解析二:Shuffle
大数据·hadoop
大大大大晴天2 天前
Hudi技术内幕:Key Generation原理与实践
大数据
得物技术6 天前
从埋点需求到规则资产:Hermes Agent 重构得物数仓工作流
大数据·llm·ai编程
久美子6 天前
AI驱动数仓建设的Harness工程实践——本体建模、知识分层与上下文工程
大数据
大树886 天前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
大志哥1236 天前
ES和Logstash日志链路系统上线后遭遇切片爆炸(解决)
大数据·elasticsearch