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
相关推荐
万能的编程语言11 分钟前
ORACLE逗号分隔的字符串字段,关联表查询
数据库·oracle
33三 三like16 分钟前
数据库基础知识点(选填/问答题)
数据库·oracle
jjw_zyfx17 分钟前
Django结合websocket实现分组的多人聊天
数据库·websocket·django
不会编程的猫星人20 分钟前
oracle控制文件发生变化的情况
数据库·oracle
Leo.yuan27 分钟前
可视化报表如何制作?一文详解如何用报表工具开发可视化报表
大数据·数据库·数据分析·数据可视化·finebi
2401_8574396940 分钟前
SSM 架构打造垃圾分类系统,点亮环保之路
java·数据库·后端·架构
猫猫不是喵喵.44 分钟前
【Redis】Redis缓存穿透
数据库·redis·缓存
我不会敲代码a1 小时前
Hive-4.0.1数据库搭建(可选配置用户名密码远程连接)
数据库·hive·hadoop
VVVVWeiYee2 小时前
新华三预赛考前突击
linux·服务器·网络·数据库·信息与通信
向上的车轮3 小时前
MongoDB存储照片和文件存储照片的区别在那里?
数据库·mongodb