openGauss开源数据库实战二十六

文章目录

任务二十六 openGauss 数据库的逻辑备份与顺复

任务目标

掌握openGauss数据库的逻辑备份和恢复。

实施步骤

一、为进行数据库逻辑备份做准备

使用Linux的root用户,执行下面的命令,创建逻辑备份的保存目录:

bash 复制代码
su -
mkdir /backup
chown omm.dbgrp /backup
exit

二、openGauss数据库逻辑备份和恢复案例1

1.使用gs_dump备份数据库,生成sql文件

使用Linux用户omm,执行下面的命令,备份openGauss的数据库studentdb:

bash 复制代码
gs_dump -U student -W student@ustb2020 -p 26000 studentdb -F p \
         -f /backup/studentdb_backup.sql
2.使用gs_dump生成的sql文件恢复数据库

使用Linux用户omm,执行下面的命令,创建数据库用户pupil、表空间pupilts、数据库pupildb:

sql 复制代码
gsql -d postgres -p 26000 -r
CREATE USER pupil IDENTIFIED BY 'pupil@ustb2020';
ALTER USER pupil SYSADMIN;
CREATE TABLESPACE pupil_ts RELATIVE LOCATION 'tablespace/pupil_ts1';
CREATE DATABASE pupildb WITH TABLESPACE =pupil_ts;
\q

使用Linux用户omm,用数据库用户pupil登录到openGaussDBMS,执行上面用gs_dump生成的sql文件,将数据恢复到数据库pupildb中:

sql 复制代码
gsql -d pupildb -h 192.168.100.91 -U pupil -p 26000 -W pupil@ustb2020 \
     -f /backup/studentdb_backup.sql -q

执行下面的命令,验证数据库studentdb的备份已经被恢复到数据库pupildb中:

sql 复制代码
gsql -d pupildb -h 192.168.100.91 -U pupil -p 26000 -W pupil@ustb2020 -c "\dt"

执行下面的命令,清除实验数据:

sql 复制代码
gsql -d postgres -p 26000 -r
drop database pupildb;
drop tablespace pupil_ts;
drop user pupil;
\q
rm /backup/studentdb_backup.sql

三、openGauss数据库逻辑备份和恢复案例2

1.使用gs_dump备份数据库,生成归档格式的备份文件

使用Linux用户omm,执行下面的命令,生成归档格式的备份文件:

sql 复制代码
gs_dump -U student -W student@ustb2020 -p 26000 studentdb -F c \
         -f /backup/studentdb_backup.dump
2.使用gs_dump生成的归档文件恢复数据库

使用Linux用户omm,执行下面的命令,创建数据库用户pupil、表空间pupil_ts、数据库pupildb:

sql 复制代码
gsql -d postgres -p 26000 -r
CREATE USER pupil IDENTIFIED BY 'pupil@ustb2020';
ALTER USER pupil SYSADMIN;
CREATE TABLESPACE pupil_ts RELATIVE LOCATION 'tablespace/pupil_ts1';
CREATE DATABASE pupildb WITH TABLESPACE =pupil_ts;
\q

使用Linux用户omm,用数据库用户pupil登录到openGaussDBMS,执行上面用gs_dump生成的归档格式的数据库studentdb的备份,将数据恢复到数据库pupildb中:

sql 复制代码
gs_restore -d pupildb -h 192.168.100.91 -U pupil -p 26000 -W pupil@ustb2020 /backup/studentdb_backup.dump

执行下面的命令,验证数据库studentdb的备份已经被恢复到数据库pupildb中:

sql 复制代码
gsql -d pupildb -h 192.168.100.91 -U pupil -p 26000 -W pupil@ustb2020 -c "\dt"

四、清理工作

使用Linux用户omm,在Linux终端窗口执行下面的命令,清除任务数据:

sql 复制代码
gsql -d postgres -p 26000 -r
drop database pupildb;
drop tablespace pupil_ts;
drop user pupil;
\q
rm /backup/studentdb_backup.dump
相关推荐
哈__2 小时前
KES-Operator重塑Kubernetes环境下的KES数据库集群管理
数据库·kubernetes·operator·kes
IvorySQL3 小时前
IvorySQL 5.6 发布:PG 18.6 内核升级,沙盒即开即用
数据库·人工智能·postgresql
CNSSIRD数据库4 小时前
中国企业环境信用数据库2003-2026
大数据·数据库·数据分析·论文笔记
fd32004 小时前
达梦数据库更新统计信息后仍走旧执行计划解决方案
数据库
华章酱5 小时前
MySQL幻读是怎么出现的
数据库·mysql·幻读
浅念-5 小时前
Redis基础详解:单线程模型、String与Hash数据结构
服务器·数据库·redis·sql·mysql·nosql数据库·nosql
updayday8546 小时前
离职域账号状态变更与Ping64操作记录核对
大数据·网络·数据库·安全·智能路由器
Nturmoils6 小时前
只恢复一张表,别把整个库都还回去
数据库
龙腾AI白云6 小时前
大语言模型:从语言理解到通用智能的跃迁
数据库·人工智能·机器学习·知识图谱
SelectDB7 小时前
快手基于 Apache Doris 千亿多模态检索的实践
大数据·数据库·数据分析