作为一个Oracle数据库管理员,在当下国产数据库可以说是百花齐放的时代环境中,非常需要去了解当今国内数据库的发展与现状情况。
偶然的时刻了解到8小时玩转openGauss训练营(第二期)的培训交流的机会,刚好也是周末的时间,也刚好有空闲的时间,就参加学习了openGauss数据库方面的情况。
openGauss提供面向多核的极致性能、全链路的业务和数据安全、基于AI的调优和高效运维的能力,全面友好开放,携手伙伴共同打造全球领先的企业级开源关系型数据库。
它是基于PostgreSQL 9.2.4内核魔改多线程结构。
可以在线修改的参数
gs_ctl reload -D $DATADIR # select pg_reload_conf();
gs_ctl restart -D $DATADIR gs_om -t restart
ALTER SYSTEM SET paraname TO value; ALTER DATABASE dbname SET paraname TO value; ALTER USER username SET paraname TO value; SET paraname TO value;
gs_guc set -D datadir -c "paraname=value” gs_guc set -N all -I all -c "paraname=value"
MOT (Memory-Optimized Table):使用OCC实现事务的并发控制的行存储引擎。
在事务期间(使用任何隔离级别),直到提交阶段,不会对记录加锁。优点:性能更高。缺点:可能被中止。如果另一个会话尝试更新相同的记录,则更新可能会失败,MOT在提交时通过版本检查机制检测冲突。
注意:当使用串行化或可重复读取隔离级别时,在使用悲观并发控制的引擎上也会发生类似的中止。
select mot_global_memory_detail();
select mot_local_memory_detail();
select * from mot_session_memory_detail() where sessid = pg_current_sessionid();
类似于Oracle Database产品中的AWR报告,常用于分析数据库基于等待事件方法论的性能问题。
默认数据保留8天,每1小时自动创建一个快照。
select * from snapshot.snapshot order by start_ts;
select * from snapshot.tables_snap_timestamp where snapshot_id = 1 order by start_ts;
select create_wdr_snapshot();
select generate_wdr_report(begin_snap_id Oid, end_snap_id Oid, int report_type, int report_scope, int node_name );
经过此次的学习,认识到国产数据库在技术和推广层面上越来越成熟和智能。