南大通用数据迁移之GaussDB_To_GBase8a(二)数据对象导出

原文链接:

https://www.gbase.cn/community/post/3858

更多精彩内容尽在南大通用GBase技术社区,南大通用致力于成为用户最信赖的数据库产品供应商。

1.GaussDB数据对象定义的导出

1.1.GaussDB数据对象定义的导出

        GaussDB 200提供的gs_dump和gs_dumpall工具,能够帮助用户导出需要的数据库对象或其相关信息。gs_dump支持导出单个数据库或其内的对象,而gs_dumpall支持导出集群中所有数据库或各库的公共全局对象。
        gs_dump和gs_dumpall工具在进行数据导出时,其他用户可以访问集群数据库(读或写)。gs_dump和gs_dumpall工具支持导出完整一致的数据。例如,T1时刻启动gs_dump导出A数据库,或者启动gs_dumpall导出整个集群数据库,那么导出数据结果将会是T1时刻A数据库或者该集群数据库的数据状态,T1时刻之后对A数据库或集群数据库的修改不会被导出。
gs_dump支持将数据库信息导出至纯文本格式的SQL脚本文件或其他归档文件中。 默认导出是纯文本格式的SQL脚本文件,包含将数据库恢复为其保存时的状态所需的SQL语句。通过gsql运行该SQL脚本文件,可以恢复数据库。即使在其他主机和其他数据库产品上,只要对SQL脚本文件稍作修改,也可以用来重建数据库。
        GaussDB 200支持使用gs_dump工具导出某个数据库级的内容,包含数据库的数据和所有对象定义。可根据需要自定义导出如下信息:  
1、导出数据库全量信息,包含数据和所有对象定义。 使用导出的全量信息可以创建一个与当前库相同的数据库,且库中数据也与当前库相同。 
2、仅导出所有对象定义,包括:库定义、函数定义、模式定义、表定义、索引定义和存储过程定义等。使用导出的对象定义,可以快速创建一个相同的数据库,但是库中并无原数据库的数据。 
3、仅导出数据,不包含所有对象定义。 
        具体用法可以参考《GaussDB 200一体机 6.5.1 产品文档》的5.9.2章节和7.3.7 gs_dump 章节
示例1:执行gs_dump,仅导出postgres数据库所有对象的定义,导出文件格式为sql文本格式。 
第一步:以操作系统用户omm登录安装有MPPDB服务的任一主机。执行source $ {BIGDATA_HOME}/mppdb/.mppdbgs_profile命令启动环境变量。
第二步:使用gs_dump导出postgres数据库。 

gs_dump -W Bigdata@123 -f /home/omm/backup/postgres_def_backup.sql -p 25308 postgres -s -F p 
gs_dump[port='25308'][postgres][2017-07-20 15:04:14]: dump database postgres successfully
gs_dump[port='25308'][postgres][2017-07-20 15:04:14]: total time: 472 ms 

示例2:执行gs_dump,导出public模式下所有表(视图、序列和外表)和hr模式中staffs表,包含数据和表定义,导出文件格式为自定义归档格式。

gs_dump -W Bigdata@123 -f /home/omm/backup/MPPDB_backup3.dmp -p 25308 human_resource -t public.* -t hr.staffs -F c
gs_dump[port='25308'][human_resource][2018-12-13 09:40:24]: dump database human_resource successfully 
gs_dump[port='25308'][human_resource][2018-12-13 09:40:24]: total time: 896 ms

示例3:执行gs_dump,导出表hr.staffs的定义和数据,只导出表hr.employments的定义,导出文件格式为tar归档格式。

gs_dump -W Bigdata@123 -f /home/omm/backup/MPPDB_table_backup3.tar -p 25308 human_resource -t hr.staffs -t hr.employments --exclude-table-data hr.employments -F t 
gs_dump[port='25308'][human_resource][2018-11-14 11:32:02]: dump database human_resource successfully 
gs_dump[port='25308'][human_resource][2018-11-14 11:32:02]: total time: 1645 ms 

示例4:执行gs_dumpall,仅导出所有数据库定义(omm用户为管理员用户),导出文件为文本格式。执行命令后,会有很长的打印信息,最终出现total time即代表执行成功。示例中将不体现中间的打印信息。 

gs_dumpall -W Bigdata@123 -U omm -f /home/omm/backup/MPPDB_backup.sql -p 25308 -s 
gs_dumpall[port='25308'][2018-11-14 11:28:14]: dumpall operation successful 
gs_dumpall[port='25308'][2018-11-14 11:28:14]: total time: 4147 ms 

常用参数说明

2.GaussDB数据库用户信息导出

        GaussDB 200支持角色、用户组、用户。在GaussDB 中根据不同业务场景需要,管理员使用FusionInsight Manager创建并管理不同用户组。用户组通过绑定角色获取操作权限,用户加入用户组后,可获得用户组具有的操作权限。用户组同时可以达到对用户进行分类并统一管理多个用户。
GBase 8a MPP只支持用户,不支持角色和用户组。
        GaussDB 200的Schema建议迁移时对应成GBase 8a MPP的database,用户赋权的对象也会有差异。所以GaussDB的用户信息可以使用FusionInsight Manager导出后根据GBase 8a MPP的规则在GBase 8a MPP中重建用户和对应权限。
GaussDB导出步骤:
1、登录FusionInsight Manager
2、选择“系统 > 权限 > 用户组”
3、单击“导出全部”,可一次性导出所有用户组信息,可导出“TXT”或者“CSV”格式。
        导出的用户组信息包含以下几个字段:用户组名、描述、用户列表、角色列表。类似的操作还可以导出角色等信息。对于导出的USAGE权限说明如下: 
模式(Schema)下,USAGE允许访问包含在指定模式中的对象,若没有该权限,则只能看到这些对象的名字。gsmpp_server默认具有USAGE权限。
GaussDB的安全策略,可以通过FusionInsight Manager的界面上“系统 > 权限 > 安全策略 > 密码策略”进行设置和查看,GBase 8a MPP也支持安全策略,可以建立对应的安全策略。
GBase 8a MPP 安全策略受配置参数控制,需要在集群的配置文件中更改对应的配置参数来使安全策略起效:
1、密码复杂度受只读量 password_format_option 控制
2、密码长度受只读变量 password_min_length 控制
3、口令间隔控制参数为只读变量password_reuse_max 
4、密码过期时间为只读变量password_life_time

ALTER USER jeffrey PASSWORD EXPIRE INTERVAL 180 DAY; 
ALTER USER jeffrey PASSWORD EXPIRE; 

用户登录重试次数参数为只读变量login_attempt_max
登录信息显示受只读变量 show_login_status控制

gbase> show login status\G;

用户账户锁定:

CREATE/ALTER USER 
user [auth_option] 
[expiration_option | lock_option | host_option] ... 
lock_option: { 
ACCOUNT LOCK 
| ACCOUNT UNLOCK 
}

gbase.user_check 系统表中可以查询到用户安全信息

gbase> select Locked,password_expired from gbase.user_check where user = 'user1';

原文链接:

https://www.gbase.cn/community/post/3858

更多精彩内容尽在南大通用GBase技术社区,南大通用致力于成为用户最信赖的数据库产品供应商。

  • 26
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值