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
相关推荐
web135085886351 小时前
深入理解 SQL 中的 DATEDIFF 函数
数据库·sql
然然阿然然4 小时前
2025.1.16——六、BabySQL 双写绕过|联合注入
数据库·学习·mysql·web安全·网络安全
L~river4 小时前
SQL刷题快速入门(三)
数据库·sql·mysql·笔试·刷题
T.O.P114 小时前
SQL语法基础知识总结
数据库·sql·mysql
BillKu4 小时前
数据库存储上下标符号,sqlserver 2008r2,dm8
数据库·sqlserver·达梦数据库·dm8
Amir_zy4 小时前
Python脚本:不同Oracle库的表进行读写
数据库·python·oracle
m0_748239834 小时前
MySQL Workbench菜单汉化为中文
android·数据库·mysql
JUN12JUN124 小时前
简单的sql注入 buuctf
服务器·数据库·oracle
CSBLOG4 小时前
Day30上 - ChromaDB 向量数据库
数据库·人工智能·深度学习·oracle
GottdesKrieges4 小时前
GaussDB日常维护操作
数据库·sql·gaussdb