【openGauss数据库】--运维指南03--数据导出

news2024/11/27 6:18:37

【openGauss数据库】--运维指南03--数据导出

    • 🔻 一、openGauss导出数据
      • 🔰 1.1 概述
      • 🔰 1.2 导出单个数据库
        • 🔷 1.2.1 导出数据库
        • 🔷 1.2.2 导出模式
        • 🔷 1.2.3 导出表
      • 🔰 1.3 导出所有数据库
      • 🔰 1.4 导出全局对象
    • 🔻 二、总结—温故知新

在这里插入图片描述


👈【上一篇】
💖The Begin💖 点点关注,收藏不迷路💖
【下一篇】👉

🔻 一、openGauss导出数据

🔰 1.1 概述

openGauss提供的gs_dumpgs_dumpall工具,能够帮助用户导出需要的数据库对象或其相关信息。通过导入工具将导出的数据信息导入至需要的数据库,可以完成数据库信息的迁移。gs_dump支持导出单个数据库或其内的对象,而gs_dumpall支持导出openGauss中所有数据库或各库的公共全局对象

在这里插入图片描述

gs_dumpgs_dumpall通过对导出的数据文件加密导入时对加密的数据文件进行解密可以防止数据信息泄露,为数据库的安全提供保证。

  • 🧬 说明:

💠1、使用gs_dump加密的纯文本格式文件如果导出的数据库中包含存储过程,因gsql不支持解密导入存储过程和函数,因此如果导出的数据库中包含存储过程/函数需使用另外三种模式导出数据库,并使用gs_restore恢复。

💠2、gs_dump和gs_dumpall工具在进行数据导出时,其他用户可以访问数据库(读或写)。

💠3、gs_dump和gs_dumpall工具支持导出完整一致的数据。例如,T1时刻启动gs_dump导出A数据库,或者启动gs_dumpall导出openGauss数据库,那么导出数据结果将会是T1时刻A数据库或者该openGauss数据库的数据状态,T1时刻之后对A数据库或openGauss数据库的修改不会被导出。

  • 🧬 注意事项:

💠1、禁止修改-F c/d/t 格式导出的文件和内容,否则可能无法恢复成功。对于-F p 格式导出的文件,如有需要,可根据需要谨慎编辑导出文件。

💠2、如果数据库中包含的对象数量(数据表、视图、索引)在50万以上,为了提高性能且避免出现内存问题,建议通过gs_guc工具设置数据库节点的如下参数(如果参数值大于如下建议值,则无需设置)。
gs_guc set -N all -I all -c 'max_prepared_transactions = 1000'
gs_guc set -N all -I all -c 'max_locks_per_transaction = 512'

若设置如上参数,则需重启数据库使参数生效。

gs_om -t stop && gs_om -t start

💠3、为了保证数据一致性和完整性,导出工具会对需要转储的表设置共享锁。如果表在别的事务中设置了共享锁,gs_dump和gs_dumpall会等待锁释放后锁定表。如果无法在指定时间内锁定某个表,转储会失败。用户可以通过指定–lock-wait-timeout选项,自定义等待锁超时时间。

💠4、由于gs_dumpall读取所有数据库中的表,因此必须以openGauss管理员身份进行连接,才能导出完整文件。在使用gsql执行脚本文件导入时,同样需要管理员权限,以便添加用户和组,以及创建数据库。

🔰 1.2 导出单个数据库

🔷 1.2.1 导出数据库

🟢 1、以操作系统用户omm登录数据库主节点。
[root@klgdj ~]$ su - omm
     
🟢 2、使用gs_dump导出db_test01 数据库全量信息为tar归档格式。
[omm@klgdj back_up]$ gs_dump -U omm -f /home/omm/back_up/db_test01_backup.tar -p 15400 db_test01 -F t

在这里插入图片描述

  • 🧬 示例:

🟢 1、执行gs_dump,导出db_test01 数据库全量信息,导出文件格式为sql文本格式。
[omm@klgdj back_up]$ gs_dump -U omm -f /home/omm/back_up/db_test01_backup.sql -p 15400 db_test01 -F p
    在这里插入图片描述
   
🟢 2、执行gs_dump,仅导出db_test01 数据库中的数据,不包含数据库对象定义,导出文件格式为自定义归档格式。
[omm@klgdj back_up]$ gs_dump -U omm -f /home/omm/back_up/db_test01_data_backup.dmp -p 15400 db_test01 -a -F c
   
在这里插入图片描述
   
🟢 3、执行gs_dump,仅导出db_test01 数据库所有对象的定义,导出文件格式为sql文本格式。
[omm@klgdj back_up]$ gs_dump -f /home/omm/back_up/db_test01_def_backup.sql -p 15400 db_test01 -s -F p
    在这里插入图片描述
   
🟢 4、执行gs_dump,仅导出db_test01 数据库的所有对象的定义,导出文件格式为文本格式,并对导出文件进行加密。
[omm@klgdj back_up]$ gs_dump -f /home/omm/back_up/db_test01_def_backup02.sql -p 15400 db_test01 --with-encryption AES128 --with-key 123456#abcdef -s -F p
    在这里插入图片描述

  • 🧬 gs_dump 参数详解:

🩸 gs_dump -U jack -W abcd@123 -f /home/omm/back_up/userdatabase_backup.tar -p 8000 dbname -F t
在这里插入图片描述

🔷 1.2.2 导出模式

🟢 1、以操作系统用户omm登录数据库主节点。
[root@klgdj ~]$ su - omm
   
🟢 2、使用gs_dump同时导出db_test01public模式。
[omm@klgdj back_up]$ gs_dump -U omm -f /home/omm/back_up/db_test01_schema_backup -p 15400 db_test01 -n db_test01 -n public -F d
   
在这里插入图片描述

  • 🧬 示例:

🟢 1、执行gs_dump,导出db_test01的db_test01 模式全量信息,导出文件格式为文本格式。
[omm@klgdj back_up]$ gs_dump -f /home/omm/back_up/db_test01_schema_backup.sql -p 15400 db_test01 -n db_test01 -F p
   
在这里插入图片描述
   
🟢 2、执行gs_dump,仅导出db_test01数据库的db_test01 模式的数据,导出文件格式为tar归档格式。
[omm@klgdj back_up]$ gs_dump -f /home/omm/back_up/db_test01_schema_data_backup.tar -p 15400 db_test01 -n db_test01 -a -F t
   
在这里插入图片描述
   
🟢 3、执行gs_dump,仅导出db_test01数据库的 db_test01 模式的定义,导出文件格式为目录归档格式。
[omm@klgdj back_up]$ gs_dump -f /home/omm/back_up/db_test01_schema_def_backup -p 15400 db_test01 -n db_test01 -s -F d
   
在这里插入图片描述
   
🟢 4、执行gs_dump,导出db_test01数据库时,排除public模式,导出文件格式为自定义归档格式。
[omm@klgdj back_up]$ gs_dump -f /home/omm/back_up/db_test01_schema_exclude_public_backup.dmp -p 15400 db_test01 -N public -F c
   
在这里插入图片描述
   
🟢 5、执行gs_dump,同时导出db_test01数据库的db_test01public模式,且仅导出模式定义,导出文件格式为tar归档格式。
[omm@klgdj back_up]$ gs_dump -f /home/omm/back_up/db_test01_schema_custom_backup.tar -p 15400 db_test01 -n db_test01 -n public -s -F t
   
在这里插入图片描述
   
🟢 6、执行gs_dump,导出db_test01数据库时,排除db_test01public模式,导出文件格式为自定义归档格式。
[omm@klgdj back_up]$ gs_dump -f /home/omm/back_up/db_test01_schema_exclude_publicANDdb_test01_backup.dmp -p 15400 db_test01 -N db_test01 -N public -F c
   
在这里插入图片描述
   
🟢 7、执行gs_dump,导出db_test01模式下所有表(视图、序列和外表)和public模式中t_dept表,包含数据和表定义,导出文件格式为自定义归档格式。
[omm@klgdj back_up]$ gs_dump -f /home/omm/back_up/db_test01_backup02.dmp -p 15400 db_test01 -t db_test01.* -t public.t_dept-F c
   
在这里插入图片描述

  • 🧬 gs_dump 参数详解:

🩸 gs_dump -U jack -W abcd@123 -f /home/omm/back_up/userdatabase_backup.tar -p 8000 dbname -F t
在这里插入图片描述

🔷 1.2.3 导出表

🟢 1、以操作系统用户omm登录数据库主节点。
[root@klgdj ~]$ su - omm
     
🟢 2、使用gs_dump同时导出指定表db_test01.t_config和db_test01.t_area。
[omm@klgdj back_up]$ gs_dump -U omm -f /home/omm/back_up/db_test01_table_backup -p 15400 db_test01 -t db_test01.t_config -t db_test01.t_area -F d
   
在这里插入图片描述

  • 🧬 示例:

🟢 1、执行gs_dump,导出表db_test01.t_config的定义和数据,导出文件格式为文本格式。
[omm@klgdj backup]$ gs_dump -f /home/omm/backup/db_test01_t_config_backup.sql -p 15400 db_test01 -t db_test01.t_config -F p
   
在这里插入图片描述
   
🟢 2、执行gs_dump,只导出表db_test01.t_config的数据,导出文件格式为tar归档格式。
[omm@klgdj backup]$ gs_dump -f /home/omm/backup/db_test01_table_data_backup.tar -p 15400 db_test01 -t db_test01.t_config -a -F t
    在这里插入图片描述
   
🟢 3、执行gs_dump,导出表db_test01.t_config的定义,导出文件格式为目录归档格式。
[omm@klgdj backup]$ gs_dump -f /home/omm/backup/db_test01_table_def_backup -p 15400 db_test01 -t db_test01.t_config -s -F d
    在这里插入图片描述
   
🟢 4、执行gs_dump,不导出表db_test01.t_config,导出文件格式为自定义归档格式。
[omm@klgdj backup]$ gs_dump -f /home/omm/backup/db_test01_exclude_t_config_backup.dmp -p 15400 db_test01 -T db_test01.t_config -F c
    在这里插入图片描述
   
🟢 5、执行gs_dump,同时导出两个表db_test01.t_config和db_test01.t_area,导出文件格式为文本格式。
[omm@klgdj backup]$ gs_dump -f /home/omm/backup/db_test01_table_backup02.sql -p 15400 db_test01 -t db_test01.t_config -t db_test01.t_area -F p
   
在这里插入图片描述
   
🟢 6、执行gs_dump,导出时,排除两个表db_test01.t_config和db_test01.t_area,导出文件格式为文本格式。
[omm@klgdj backup]$ gs_dump -f /home/omm/backup/db_test01_exclude_t_configANDt_area_backup.sql -p 15400 db_test01 -T db_test01.t_config -T db_test01.t_area -F p

在这里插入图片描述

🟢 7、执行gs_dump,导出表db_test01.t_config的定义和数据,只导出表db_test01.t_area的定义,导出文件格式为tar归档格式。
[omm@klgdj backup]$ gs_dump -f /home/omm/backup/db_test01_table_backup3.tar -p 15400 db_test01 -t db_test01.t_config -t db_test01.t_area --exclude-table-data db_test01.t_area -F t
在这里插入图片描述

🟢8、执行gs_dump,导出表db_test01.t_config的定义和数据,并对导出文件进行加密,导出文件格式为文本格式。
[omm@klgdj backup]$ gs_dump -f /home/omm/backup/db_test01_t_config_backup4.sql -p 15400 db_test01 -t db_test01.t_config --with-encryption AES128 --with-key abcdefg_?1234567 -F p
在这里插入图片描述

🟢9、执行gs_dump,导出db_test01模式下所有表(包括视图、序列和外表)和public模式中t_dept表,包含数据和表定义,导出文件格式为自定义归档格式。
gs_dump -f /home/omm/backup/db_test01_table_backup5.dmp -p 15400 db_test01 -t db_test01.* -t public.t_dept -F c

在这里插入图片描述

🟢10、执行gs_dump,仅导出db_test01数据库依赖于public模式下的t_user表对象的视图信息,导出文件格式为目录归档格式。
gs_dump -U omm -f /home/omm/backup/public_t_user_view_backup6 -p 15400 db_test01 -t public.t_user --include-depend-objs --exclude-self -F d

在这里插入图片描述

🔰 1.3 导出所有数据库

openGauss支持使用gs_dumpall工具导出所有数据库的全量信息,包含openGauss中每个数据库信息和公共的全局对象信息

🟢 1、以操作系统用户omm登录数据库主节点。
[root@klgdj ~]$ su - omm
     
🟢 2、使用gs_dumpall一次导出所有数据库信息。
[omm@klgdj back_up]$ gs_dumpall -U omm -f /home/omm/backup/DBALL_backup.sql -p 15400
   
在这里插入图片描述

  • 🧬 示例:

🟢 1、执行gs_dumpall,导出所有数据库全量信息(omm用户为管理员用户),导出文件为文本格式。执行命令后,会有很长的打印信息,最终出现total time即代表执行成功。示例中将不体现中间的打印信息。
[omm@klgdj backup]$ gs_dumpall -U omm -f /home/omm/backup/DBALL_backup02.sql -p 15400
   
在这里插入图片描述
   
🟢 2、执行gs_dumpall,仅导出所有数据库定义(omm用户为管理员用户),导出文件为文本格式。执行命令后,会有很长的打印信息,最终出现total time即代表执行成功。示例中将不体现中间的打印信息。
[omm@klgdj backup]$ gs_dumpall -U omm -f /home/omm/backup/DBALL_def_backup.sql -p 15400 -s
   
在这里插入图片描述
   
🟢 3、执行gs_dumpall,仅导出所有数据库中数据,并对导出文件进行加密,导出文件为文本格式。执行命令后,会有很长的打印信息,最终出现total time即代表执行成功。示例中将不体现中间的打印信息。
[omm@klgdj backup]$ gs_dumpall -f /home/omm/backup/DBALL_data_backup.sql -p 15400 -a --with-encryption AES128 --with-key abcdefg_?1234567
   
在这里插入图片描述

🔰 1.4 导出全局对象

openGauss支持使用gs_dumpall工具导出所有数据库公共的全局对象,包含数据库用户和组、表空间及属性(例如:适用于数据库整体的访问权限)信息

🟢 1、以操作系统用户omm登录数据库主节点。
[root@klgdj ~]$ su - omm
     
🟢 2、使用gs_dumpall导出表空间对象信息
[omm@klgdj back_up]$ gs_dumpall -U omm -f /home/omm/backup/DBALL_tablespace.sql -p 15400 -t
   
在这里插入图片描述

  • 🧬 示例:

🟢 1、执行gs_dumpall,导出所有数据库的公共全局表空间信息和用户信息(omm用户为管理员用户),导出文件为文本格式。
[omm@klgdj backup]$ gs_dumpall -U omm -f /home/omm/backup/DBALL_globals.sql -p 15400 -g
   
在这里插入图片描述
   
🟢 2、执行gs_dumpall,导出所有数据库的公共全局表空间信息(omm用户为管理员用户),并对导出文件进行加密,导出文件为文本格式。
[omm@klgdj backup]$ gs_dumpall -U omm -f /home/omm/backup/DBALL_tablespace02.sql -p 15400 -t --with-encryption AES128 --with-key abcdefg_?1234567
   
在这里插入图片描述
   
🟢 3、执行gs_dumpall,导出所有数据库的公共全局用户信息(omm用户为管理员用户),导出文件为文本格式。
[omm@klgdj backup]$ gs_dumpall -U omm -f /home/omm/backup/DBALL_user.sql -p 15400 -r
    在这里插入图片描述

🔻 二、总结—温故知新

❓ 该章详细介绍了openGauss数据库使用gs_dump和gs_dumpall命令导出数据(导出单个数据库&导出所有数据库)。

👈【上一篇】
💖The End💖 点点关注,收藏不迷路💖
【下一篇】👉

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

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

相关文章

计算两个二维数组arr1和arr2中对应位置元素的商

代码实现 :一个嵌套循环,用于计算两个二维数组arr1和arr2中对应位置元素的商,并将结果存储在result数组中。首先,定义了一个空数组result用于存储结果。然后,通过两个for循环遍历arr1数组的每一行和每一列。在内层循环…

[SWPUCTF 2021 新生赛] ez_unserialize

打开链接但是没有题目 使用御剑扫一下 flag.php打不开,但是在robots.txt里面我们找到了一个路径 /cl45s.php 打开之后是PHP源码 简单审一下,构造pop链: 链尾(就是最终我们想要利用的地方),在echo $flag 并且include了…

基于改进莱维飞行和混沌映射的粒子群算法(10种混沌映射随意切换),附matlab代码

“ 本篇文章对粒子群优化算法进行改进,首先通过引入混沌映射机制,对其群体进行初始化,增加粒子群个体的多样性;然后在粒子群个体的位置更新公式上引入改进的莱维飞行机制,提高搜索精度,帮助粒子群个体跳出局…

云原生(第三篇)-k8s资源管理的两种方式

陈述式资源管理方法: 1.kubernetes 集群管理集群资源的唯一入口是通过相应的方法调用 apiserver 的接口 2.kubectl 是官方的CLI命令行工具,用于与 apiserver 进行通信,将用户在命令行输入的命令,组织并转化为 apiserver 能识别的…

四十一、动态规划——树形DP、记忆化搜索例题题解

算法主要内容 一、树形DP1、题目内容2、状态划分(1)存储(2)状态集合划分 3、题解 二、记忆化搜索1、题目内容2、状态划分(1)状态编号(2)状态划分 3、题解 一、树形DP 1、题目内容 2…

瑞芯微:基于RKNN3568得ufldv2部署

Lane检测是自动驾驶和高级驾驶员辅助系统(ADAS)的基本组成部分,用于区分和定位道路上的车道线。尽管深度学习模型已经取得了巨大成功,但仍有一些重要且具有挑战性的问题需要解决。 第一个问题是效率问题。在实践中,车…

猜猜看!哪张甜甜圈图是真的?AI数字人商业实践「真经」;LangChain X Prem挑战赛;故事绘本生成与盈利平台 | ShowMeAI日报

👀日报&周刊合集 | 🎡生产力工具与行业应用大全 | 🧡 点赞关注评论拜托啦! 🤖 猜猜看!你觉得,哪张甜甜圈的图片是真的? 这是 Reddit网站 Midjourney 子区发起的一项趣味挑战&…

【计算机视觉】对比学习采样器sampler

前置知识准备 Samplers — Open Metric Learning documentation​​​​​​ 在该文档里,category表示类别,label表示商品,instance表示商品不同角度的图片。 category就是blouses_shirts;label就是15;instance就是这…

【设计模式】第十章:组合模式详解及应用案例

系列文章 【设计模式】七大设计原则 【设计模式】第一章:单例模式 【设计模式】第二章:工厂模式 【设计模式】第三章:建造者模式 【设计模式】第四章:原型模式 【设计模式】第五章:适配器模式 【设计模式】第六章&…

【数据可视化】SVG(一)

一、邂逅SVG和初体验 什么是SVG  SVG全称为(Scalable Vector Graphics),即可缩放矢量图形。(矢量定义:既有大小又有方向的量。在物理学中称作矢量,如一个带箭头线段:长度表示大小&#xff0…

(位运算) 1356. 根据数字二进制下 1 的数目排序 ——【Leetcode每日一题】

❓ 1356. 根据数字二进制下 1 的数目排序 难度:简单 给你一个整数数组 arr 。请你将数组中的元素按照其二进制表示中数字 1 的数目升序排序。 如果存在多个数字二进制中 1 的数目相同,则必须将它们按照数值大小升序排列。 请你返回排序后的数组。 示…

python flask sqlite http服务

python flask 服务 为了让拼接项目能够简单实用http服务,用python flask 来做一个http服务,使用python的原因是拼接项目本身很多人工智能的服务是用python来写。数据库为了简单实用sqlite,python自带sqlite3 ,很方便 db.sql CREATE TABLE …

AcWing 98. 分形之城

题目链接:AcWing 98. 分形之城 问题描述 分析 这一道题看起来很麻烦,其实就是比较麻烦。 这是一道递归坐标变换的问题,坐标变换比较难想,建议自己动手画一画容易明白一些。 首先是城市等级 n n n 与总点数的关系,不难发现总点数…

golang Redis的新数据类型github.com/go-redis/redis/v8实践

Redis的新数据类型# 在redis中,后面添加了几个比较高级的数据类型 hyperloglog基数统计、GEO存储地理位置、bitmap位图、stream为消息队列设计的数据类型 这 4 种数据类型。 HyperLogLog类型# HyperLogLog简介# HyperLogLog 是一种用于数据统计的集合类型&#x…

亚马逊云科技Zero ETL数据库,助力企业走向数据驱动的业务增长之路

据Forrester研究,相对于数据应用不够成熟的公司,那些有效获取业务洞察的公司,有高达8.5倍的可能性实现至少20%的收入增长。然而,要实现这一增长,需要简化一项流程——在数据分析前管理和准备好数据。这就是为什么亚马逊…

16.电容触摸按键

1.电容触摸按键介绍: R是外接的充电电阻, Cs是没有触摸按下的触摸感应区和四周覆铜区域的一个杂散的电容;当使用手指去触摸感应区时,手指和感应区形成一个电容Cx,开关是电容放电的一个开关,在实际设计中是利…

Ubuntu 22.04.2 LTS LTS x86_64 安装 stable-diffusion-webui 【2】基本版本完结。

前篇 Ubuntu 20.04 LTS x86_64 安装 stable-diffusion-webui_hkNaruto的博客-CSDN博客 内容太多,分第二篇继续 中途重装了机器,20.04 ,apt upgrade后自动升级到22.04.2 现状:起来了,又没完全起来 启动日志 (stab…

如何在 Linux 中将本地网络 IP 设置为静态的

文章目录 对于普通的 Linux 操作系统对于 Red Hat Enterprise Linux 9 笔者的运行环境: CentOS 8 Red Hat Enterprise Linux 9 在 Linux 中将本地网络 IP 设置为静态的,只需要在那台 Linux 上设置即可。为了方便,这里笔者使用了 Xshell 来远…

手写操作系统--主引导扇区以及内核加载器

在CPU上电后,会自动将cs:ip置为f000:fff0,下图就是一个计算机刚上电的模拟: ffff00这里开始的代码是BIOS自检,检查计算机的硬件完备性,做完这一切后将第一个扇区的内容复制到0x7c00的位置,并从0x7c00位置执行代码&…

第五章 逻辑回归

第五章 逻辑回归 Logistic回归的⼀般过程 收集数据:采⽤任意⽅法收集数据。准备数据:由于需要进⾏距离计算,因此要求数据类型为数值型。另外,结构化数据格式则最佳。分析数据:采⽤任意⽅法对数据进⾏分析。训练算法&…