张小白OpenGauss训练营日记2——openGauss训练营学习心得

举报
张辉 发表于 2021/09/12 23:45:34 2021/09/12
【摘要】 openGauss训练营第二天流水账

接上一篇:张小白OpenGauss训练营日记1——openGauss训练营学习心得 https://www.modb.pro/db/108366

今天下午是训练营的最后4个小时,张小白如约来到直播间。


第六讲:openGauss实践总结 由彭冲老师主讲

彭老师介绍了在使用openGauss的时候常见的一些坑:

包含以下内容:


首先是Python版本问题,由于Python3.6可能存在较多的问题,建议使用Python3.7以上,这对熟悉源码安装Python 3.7.5的张小白而言可能不算什么问题了:

如果在某些有内网堡垒机的场所,不能配置互信,可以按照以下的方式进行安装:


如果修改过MTU的参数,可能会遇到以下的坑:


使用openGauss进行源码编译安装时,记住以下几点:

如果要让openGauss访问外部表(如外部的mysql或者oracle),需要安装相关的插件:


安装postgis插件时需要注意以下几点:

使用客户端连接服务器的时候,需要考虑以下几个方面:


openGauss默认是返回小写的列名,如果需要返回大写的列名,可以去下载老师做好的jar包:

openGause支持多种表分区方式:建个分区,哈希分区,列表分区和范围分区。需要注意,有些分区操作的语句需要在分区外加括号,有些语句不需要:

需要注意用户自定义函数的写法和调用方法:

如果没有public schema,在创建自定义函数时,可能会因为没有有效的“search path”而造成错误:

引用其他schema下的对象需指定schema名称:

有三种方式指定数据库兼容性,建议使用后两种方式:

遇到从Oracle的SYSDATE类型的数据迁移时,可以考虑以下的方式:

openGauss设置了不同的权限体系:

处理openGauss的备份恢复时,需注意以下内容:

可以使用SSL证书实现免密验证:

openGauss的官方客户端工具是Data Studio,openGauss也支持其他客户端工具,如pgAdmin等:

下面是以上经验的相关文档链接:


第七讲:openGauss最佳参数实践 由高云龙老师主讲

接着高云龙老师介绍了openGauss常用参数的含义和推荐值:

首先,高老师介绍了参数的3种查看方式:

参数分好多种,有些需要重启数据库方可生效,有些可以直接生效,具体的重启和加载命令如下:

可以使用gs_guc修改相关参数:

下面是一些高老师推荐的参数:

可以写好设置的脚本,然后执行使得系统参数生效:

也可以通过命令查看相关参数:

第八讲:openGauss和postgreSQL的差异 由高云龙老师主讲

高老师接着讲解了源于postgreSQL的openGauss与postgreSQL的异同:

体系结构上,一个是进程方式,一个是线程方式,还有以下区别:

运维工具上,openGauss及其相关产品MogDB有自己特定的运维工具BRM等等。在其他工具的名称上,与PostgreSQL能找到相对应的名字:

在特性上,openGauss更加强大:

在数据库对象的一些限制上,openGauss貌似支持的比PostgreSQL要略差一些:

在checkpoint机制上,PostgreSQL与openGauss有一定的区别:openGauss采用了类似MySQL的double write机制:

事务ID,openGauss是64位,PostgreSQL是32位。原则上openGauss不会有循环使用的问题:

但是PostgreSQL使用时需要小心:

第九讲:openGauss运维监控工具 由高云龙老师主讲

高老师意犹未尽,接着讲了openGuass的运维监控的相关问题:

首先介绍了运维监控的原理:

一般来说,常用的监控框架是: Prometheu+Grafana,它们的基本原理是采集相关监控信息,进行分析、展示和报警:


高老师所在的"云和恩墨"特意基于上述框架,开发了 opengauss_exporter:

安装配置 opengauss_exporter时,需注意以下问题:

监控指标文件:

opengauss_exporter可按照以下方式启动:

这是启动后的示例:

典型的采集指标的语句有:

采集数据库信息:

采集连接状态:

查看主备延迟情况:

查看复制slot和锁信息:

查看锁阻塞信息:

高老师还提了2个问题:

从本人的数据库使用经历来看,要关注数据库包括但不限于以下指标:

1.表空间、分区的使用情况;

2.碎片情况;

3.连接池信息;

4.慢SQL信息;

5.死锁信息;

6.主备延迟状态;

7.读写负载信息,读写分离压力分担情况;

8.单表记录超限预警

9.敏感操作审计和预警

10.。。。


第十讲:openGauss高可用搭建与问题解决 由刘伟老师主讲

高可用首先是架构问题:

高老师介绍了主备方式的架构原理:首先介绍的就是物理复制,一般来说,主备都是物理复制方式,逻辑复制指的一般是异构数据库同步。同步有4种级别。openGauss提供了最大可用模式,这样可以保证在备库故障时,不会导致主库的不可用。

openGauss的同步跟PostgreSQL同步方式相比多了2个方面,一个是使用了缓存接收,而不是直接刷日志文件,另一个是刷库的线程支持并行处理。这部分代码非常庞大,但是却能提高系统性能:

同步的规则如下:

讲到这个时候,直播发生了一点小插曲,刘老师的ppt意外退出了:

真是让人眼前一亮。

刘老师接着推荐了本地、同城、异地三中心的7库模式:

具体构建主备同步的操作如下:

其中主库的设置如下:

备库的操作如下:

查看同步状态的方式如下:

从不同的视角来看,主库和备库有以下几种状态:


主库宕机可以使用以下方式切换:

对于有时候会出现备库need repair的问题:可能是因为配置错误(比如节点名称写错),或者误操作导致(比如把备库启动成主库)

这时候,可以使用重新build备库的方式进行修复:

刘老师趁着时间有空,还通过实操对以上内容作了一些验证:

查看主库和备库状态:

验证 synchronous_standby_names配置错误时是否有问题:

当时发现没有生效,是因为配置文件关闭了synchronous_commit(off),将其打开:

重启数据库后,恢复成sync状态:

通过配置文件,强行改个错误的名字,再重启数据库后查看:

进行主备切换:

如果不小心将备库启动成主库:

再重新build进行修复:

刘老师通过实操让张小白加深了主备同步的印象。张小白感觉这块风险还是有点大的,还是操作时千万要小心才行。

第十一讲:openGauss社区介绍 由向新勇老师主讲

向老师首先介绍了全球的几大开源社区:

以及相关的开源文化:

介绍了开源带来的好处balabala。。。

现在,中国已经成为开源的重要贡献者:

华为深度参与了很多开源社区:

形成了硬件开放,软件开源的良好的生态:

从openGauss的发展来说:它已经是支持企业核心业务的开源数据库:

openGauss秉持以下的战略:

实现了高性能、高安全、高可用和易运维等技术创新:

openGauss具备以下治理架构:

技术委员会阵容强大,还会吸引更多优秀的技术领袖加入:

也形成了用户组:

企业可以通过签署企业CLA加入社区:

个人也可以签署个人CLA加入社区:(这个张小白好像在MindSpore社区做过)

社区有很多兴趣小组:

近期还在举办捉虫活动,奖品丰厚,看的张小白心痒痒的:

用户可以通过注册Gitee账号和提交issue和PR为openGauss社区做贡献,这点张小白在做MindSpore的时候好像写过一个博客:

张小白带你学习如何提交MindSpore Python API文档的issue和PR https://bbs.huaweicloud.com/blogs/249868 

向老师还实操了一下提交的过程:

具体跟踪操作PR的命令如下:

向老师说道:没有盈利的社区是没有价值的。。。

华为openGauss社区建立起来了产学研用的人才培养体系:

还有培训认证计划:

已经有250+通过了培训和考试:

向老师介绍了培训的流程:

包括目前出现的优惠活动:通过本次培训的人,只需要200元就可以参加考试了。。。

向老师最后做了总结:

最后,布道师朱金伟老师针对我们昨天和今天提出的问题做了解答:

其中我提出的问题,朱老师好像只回答了一个,就是关于openGauss和MindSpore的关系问题。其实张小白关注的是既然openGauss使用了DB4AI或者AI4DB的技术,可能会优先考虑华为自己的AI框架来实现这些功能吧。张小白可能想错了。朱老师回答是:在内部联系(个人的感觉那就是没有。。。)

张小白还提了几个问题,一个是主备同步的问题,一个是单表支持能力和分库分表支持能力的问题,这几个是张小白在工作中遇到的一些棘手的问题,,,,可惜因为时间太紧,朱老师好像都没有回答。。。

上完课之后,张小白就去参加考试了,在做了一些不会做的题目之后,张小白得到了这个:

感觉有资格去获取这次训练营的礼物,也有资格去参加后面的省钱培训了。。

好开心。。。

(全文完,谢谢阅读)

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。