openGauss
文章平均质量分 60
如清风一般
云淡风轻
展开
-
openGauss中运算符是一个保留关键字或字符,一般用在WHERE语句中,作为过滤条件。常见运算符如下。
所有比较操作符都是双目操作符,返回布尔类型数值。例如像1<2<3这样的表达式是非法的,因为布尔值和3之间无法用小于号(<)比较。常用的逻辑操作符有AND、OR和NOT,他们的运算结果有三个值,分别为TRUE、FALSE和NULL,其中NULL代表未知。比较操作符均为双目操作符,被比较的两个数据类型必须是相同的数据类型或者是可以进行隐式转换的类型。操作符AND和OR具有交换性,即交换左右两个操作数,不影响其结果。大部分数据类型都可用比较操作符进行比较,并返回一个布尔类型的值。描述:阶乘(前缀操作符)原创 2023-04-19 11:26:00 · 118 阅读 · 0 评论 -
openGauss SELECT语句
表名或视图名,名称前可加上模式名,如:schema_name.table_name。SELECT语句就像叠加在数据库表上的过滤器,利用SQL关键字从数据表中过滤出用户需要的数据。读取表customer_t1中指定字段c_customer_sk、c_customer_id。SELECT语句用于从表或视图中取出数据,结果被存储在一个结果表中,称为结果集。FROM子句中可以出现子查询,创建一个临时表保存子查询的输出。给表或复杂的表引用起一个临时的表别名,以便被其余的查询引用。有5种类型,详情请参见。原创 2023-04-19 11:25:10 · 107 阅读 · 0 评论 -
openGauss 查看对象
gsql工具提供了若干高级特性,便于用户使用。例如,将postgres数据库切换为数据库dp_tpcc。例如,查看表customer_t1的表结构。例如,查询ABORT的所有语法。查询当前数据库中的所有表。原创 2023-04-19 11:24:22 · 119 阅读 · 0 评论 -
openGauss DELETE语句
DELETE语句可以从指定的表里删除满足WHERE子句的行。如果WHERE子句不存在,将删除表中所有行,结果只保留表结构。原创 2023-04-19 11:23:44 · 140 阅读 · 0 评论 -
openGauss——UPDATE语句
修改已经存储在数据库中数据的行为叫做更新。用户可以更新单独一行,所有行或者指定的部分行。还可以独立更新每个字段,而其他字段则不受影响。UPDATE修改满足条件的所有行中指定的字段值,WHERE子句声明条件,SET子句指定的字段会被修改,没有出现的字段则保持它们的原值。原创 2023-04-19 11:23:01 · 258 阅读 · 0 评论 -
openGauss——INSERT INTO语句
在创建一个表后,表中并没有数据,使用这个表之前,需要向表中插入数据。INSERT INTO语句用于向表中插入新记录。该语句可以插入一行数据也可以同时插入多行数据。原创 2023-04-19 11:20:48 · 310 阅读 · 0 评论 -
创建数据库数据库安装完成后,默认生成名称为postgres的数据库。您需要自己创建一个新的数据库。
执行如下命令创建一个表,表名为customer_t1,表字段为c_customer_sk 、c_customer_id、c_first_name和c_last_name,每个表字段对应的数据类型为integer、char(5)、char(6)和char(8)。在当前数据库中创建一个新的空白表,该表由命令执行者所有。在不同的数据库中可以存放相同的表。您可以使用CREATE TABLE语句创建表。当结果显示为如下信息,则表示创建成功。新表中要创建的字段名。原创 2023-04-19 11:20:15 · 121 阅读 · 0 评论 -
数据库安装完成后,默认生成名称为postgres的数据库。您需要自己创建一个新的数据库。
创建数据库并不会选择使用它。您需要明确的指定使用新创建的数据库。使用 “\c + 数据库名” 来进入db_tpcc数据库。数据库安装完成后,默认生成名称为postgres的数据库。您需要自己创建一个新的数据库。使用 “\c + 数据库名” 进入已存在数据库。将db_tpcc数据库名称修改为tpcc。使用“\l”用于查看已经存在的数据库。使用“\l”用于查看已经存在的数据库。切换数据库为postgres数据库。要创建、修改或者删除的数据库名称。创建一个新的数据库db_tpcc。删除数据库tpcc。原创 2023-04-19 11:19:22 · 217 阅读 · 0 评论 -
数据库安装成功,登录后,可以使用\help语句查看所有openGauss的SQL语法
默认情况下,数据库安装成功,登录后,可以使用\help语句查看所有openGauss的SQL语法。""\h name命令可以查看具体的语法信息。例如:""原创 2023-04-19 11:18:39 · 57 阅读 · 0 评论 -
使用C++编程语言访问openGauss
SSL模式: 保证client.key*系列文件为600权限: 退回根目录,创建.postgresql目录,并将root.crt,client.crt,client.key,client.key.cipher,client.key.rand,client.req,server.crt,server.key,server.key.cipher,server.key.rand,server.req放在此路径下。设置为1时,将会打印psqlodbc驱动的mylog,日志生成目录为/tmp/。原创 2023-04-18 10:08:16 · 432 阅读 · 0 评论 -
openGauss AI特性
但是,由于各种各样客观因素的制约,在很长的一段时间内,人工智能技术并没有得到大规模的应用,甚至还经历了几次明显的低谷期。到了近些年,随着信息技术的进一步发展,从前限制人工智能发展的因素已经逐渐减弱,所谓的ABC(AI、Big data、Cloud computing)技术也随之而诞生。例如通过SQL-like语句实现推荐系统、图像检索、时序预测等功能,充分发挥数据库的高并行、列存储等优势,既可以避免数据和碎片化存储的代价,又可以避免因信息泄漏造成的安全风险;也可以通过人工智能的手段实现自治、免运维等。原创 2023-04-13 16:04:40 · 114 阅读 · 0 评论 -
openGauss SQL
SQL是用于访问和处理数据库的标准计算机语言。查询数据。在表中插入、更新和删除行。创建、替换、更改和删除对象。控制对数据库及其对象的访问。保证数据库的一致性和完整性。SQL语言由用于处理数据库和数据库对象的命令和函数组成。该语言还会强制实施有关数据类型、表达式和文本使用的规则。因此在SQL参考章节,除了SQL语法参考外,还会看到有关数据类型、表达式、函数和操作符等信息。原创 2023-04-13 10:04:56 · 98 阅读 · 0 评论 -
openGauss 如何解决“out of memory allocating xxx bytes after a total of xxx bytes”报错
如何解决编译过程中出现的“out of memory allocating xxx bytes after a total of xxx bytes”报错。解决办法:编译过程中降低make 并发数,或者直接使用make命令。使用一键式脚本的话需要修改脚本。报错原因:脚本中的编译过程都添加了-sj参数,同时机器配置较低,内存不足,并发数太大导致错误。原创 2023-04-13 10:02:33 · 611 阅读 · 0 评论 -
openGauss 如何解决“g++: fatal error: Killed signal terminated program cclplus”报错
如何解决编译过程中出现的“g++: fatal error: Killed signal terminated program cclplus”报错。解决办法:编译过程中降低make 并发数,或者直接使用make命令。使用一键式脚本的话需要修改脚本。报错原因:脚本中的编译过程都添加了-sj参数,并发数太大导致错误。原创 2023-04-13 09:46:46 · 651 阅读 · 0 评论 -
openGauss 如何解决“Configure error: C compiler cannot create executables”报错
解决办法:若binarylibs是通过开源软件构建而来,请重新构建开源第三方软件;若binarylibs是代码下载而来,请重新下载。最后重新执行当前脚本或命令。如何解决版本编译时出现的“Configure error: C compiler cannot create executables”报错。报错原因:binarylibs文件不完整或者被损坏。原创 2023-04-13 09:45:19 · 287 阅读 · 0 评论 -
openGauss如何清除编译过程中生成的临时文件
进入/sda/openGauss-server目录,选择执行如下命令清除编译过程中生成的临时文件。删除由configure和make生成的文件。如何清除编译过程中生成的临时文件。删除make生成的文件。原创 2023-04-13 09:42:37 · 79 阅读 · 0 评论 -
openGauss搭建编译环境
建议使用上述操作系统安装光盘或者源中,下列依赖软件的默认安装包,若不存在下列软件,可参看软件对应的建议版本。编译openGauss的环境变量配置已经统一写入一键式编译和打包脚本,因此无需自行配置。建议版本:5.9-13.20130511。编译openGauss的软件依赖要求如。文档中的“软件安装编译”里介绍。建议版本:0.3.109-13。要求版本:2.5.31 以上。建议版本:2.17-111。建议版本:2.7.1-10。建议版本:7.0-13。建议版本:2.7-4。原创 2023-04-13 09:43:40 · 571 阅读 · 0 评论 -
openGauss AI特性
但是,由于各种各样客观因素的制约,在很长的一段时间内,人工智能技术并没有得到大规模的应用,甚至还经历了几次明显的低谷期。到了近些年,随着信息技术的进一步发展,从前限制人工智能发展的因素已经逐渐减弱,所谓的ABC(AI、Big data、Cloud computing)技术也随之而诞生。AI与数据库结合是近些年的行业研究热点,openGauss较早地参与了该领域的探索,并取得了阶段性的成果。与此同时,对于数据库内置AI的功能(如DB4AI),以SQL语法和系统函数的形式呈现。原创 2023-04-12 17:16:27 · 193 阅读 · 0 评论 -
使用openGauss从这里开始
本节描述使用数据库的基本操作。通过此节您可以完成创建数据库、创建表及向表中插入数据和查询表中数据等操作。原创 2023-04-12 14:37:31 · 161 阅读 · 0 评论 -
使用gsql访问openGauss
gsql是openGauss提供的在命令行下运行的数据库连接工具。此工具除了具备操作数据库的基本功能,还提供了若干高级特性,便于用户使用。本节只介绍如何使用gsql连接数据库,关于gsql使用方法的更多信息请参考《工具与命令参考》中“客户端工具 > gsql”章节。原创 2023-04-12 14:32:32 · 85 阅读 · 0 评论 -
openGauss逻辑备份与恢复
gs_dump是openGauss用于导出数据库相关信息的工具,用户可以自定义导出一个数据库或其中的对象(模式、表、视图等),回收站对象除外。支持导出的数据库可以是默认数据库postgres,也可以是自定义数据库。可以使用gs_dump程序将文件压缩为目录归档或自定义归档导出文件,减少导出文件的大小。例如,T1时刻启动gs_dump导出A数据库,那么导出数据结果将会是T1时刻A数据库的数据状态,T1时刻之后对A数据库的修改不会被导出。gs_dump支持导出兼容v1版本数据库的文本格式文件。原创 2023-04-11 10:59:36 · 167 阅读 · 0 评论 -
openGauss备份与恢复概述
逻辑备份与恢复:通过逻辑导出对数据进行备份,逻辑备份只能基于备份时刻进行数据转储,所以恢复时也只能恢复到备份时保存的数据。对于故障点和备份点之间的数据,逻辑备份无能为力,逻辑备份适合备份那些很少变化的数据,当这些数据因误操作被损坏时,可以通过逻辑备份进行快速恢复。数据备份是保护数据安全的重要手段之一,为了更好的保护数据安全,openGauss数据库支持三种备份恢复类型,以及多种备份恢复方案,备份和恢复过程中提供数据的可靠性保障机制。恢复时可以直接恢复到某个备份点,在备份的库上启动数据库,恢复时间快。原创 2023-04-11 10:48:35 · 218 阅读 · 0 评论 -
openGauss支持行列混合存储
openGauss支持行列混合存储。行存储是指将表按行存储到硬盘分区上,列存储是指将表按列存储到硬盘分区上。行、列存储模型各有优劣,建议根据实际情况选择。通常openGauss用于OLTP(联机事务处理)场景的数据库,默认使用行存储,仅对执行复杂查询且数据量大的OLAP(联机分析处理)场景时,才使用列存储。默认情况下,创建的表为行存储。行存储和列存储的差异请参见。行存储和列存储的差异上图中,左上为行存表,右上为行存表在硬盘上的存储方式。左下为列存表,右下为列存表在硬盘上的存储方式。行存。原创 2023-04-11 09:20:41 · 311 阅读 · 0 评论 -
openGauss当前版本支持原生DB4AI能力
通过引入原生AI算子,简化操作流程,充分利用数据库优化器、执行器的优化与执行能力,获得高性能的数据库内模型训练能力。更简化的模型训练与预测流程、更高的性能表现,让开发者在更短时间内能更专注于模型的调优与数据分析上,而避免了碎片化的技术栈与冗余的代码实现。当前版本的DB4AI支持基于SGD算子的逻辑回归(目前支持二分类任务)、线性回归和支持向量机算法(分类任务),以及基于K-Means算子的Kmeans聚类算法。原创 2023-03-28 14:48:58 · 171 阅读 · 0 评论 -
openGauss 智能基数估计
智能基数估计利用库内轻量级算法进行多列数据分布建模,并且提供多列等值基数估计的能力。在数据分布倾斜并且列之间相关性强的数据场景下能够提供更准确的估计结果,从而给优化器提供准确的代价参考,提高计划生成准确率,提高数据库查询执行效率。原创 2023-03-28 14:44:15 · 75 阅读 · 0 评论 -
MySQL->openGauss迁移工具chameleon
chameleon工具是一个基于Python语言的MySQL到openGauss的实时复制工具。该工具提供了初始全量数据的复制以及增量数据的实时复制能力,可实现数据从MySQL迁移至openGauss。对于数据的全量和增量迁移,支持MySQL中各种数据类型的迁移,同时对于MySQL中的浮点数据类型,包括decimal、dec、numeric、float、float4、float8、real、double、double precision、fixed数据类型,可保证迁移后数据精度不丢失。原创 2023-03-28 14:42:49 · 264 阅读 · 0 评论 -
openGauss INSERT INTO语句
在创建一个表后,表中并没有数据,使用这个表之前,需要向表中插入数据。INSERT INTO语句用于向表中插入新记录。该语句可以插入一行数据也可以同时插入多行数据。原创 2023-03-24 17:27:48 · 226 阅读 · 0 评论 -
openGass数据库的主要优势
总之,openGauss数据库是一种高效、灵活、可扩展和安全的NoSQL数据库解决方案,适用于需要处理大量数据和高性能查询的应用场景。如果您需要使用高级别的数据库,不妨考虑使用openGauss数据库。openGauss数据库是一种高效的数据库,支持多种编码方式和分布式架构。它采用了许多安全机制,包括哈希函数、密钥管理等,可以确保数据的安全性。原创 2023-03-22 14:38:00 · 657 阅读 · 0 评论 -
openGauss单机部署
测试安装是否成功,首先需要使数据库处于开启状态,然后输入”gsql -d postgres -p 26000”命令使数据库在本地运行,其中-p 为数据库端口dataPortBase,具体数值在前述过程中xml配置文件中确定,这里为26000。(2)从官网下载jdbc压缩包后,将其解压至路径/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.302.b08-0.el7_9.x86_64/jre/lib/ext下。在安装结束后,准备运行后,发现gsom 无法启动。原创 2023-03-22 14:33:38 · 594 阅读 · 0 评论 -
华为openGauss数据库行存储源代码解析
最后事务号为15的事务将上面这条记录的值从value2又修改为value3,对应的页面修改为:(假设0号页面已满)在1号物理页面的第一个元组指针指向位置,插入一条“xmin”字段为15、“xmax”字段为0、“ctid”字段为(1,1)、“data”字段为value3的物理元组;pd_multi_base:类似“pd_xid_base”字段,当对元组加锁时,会将持锁的事务号写入元组中,该64位事务号由“pd_multi_base”字段(64位)和元组头部的“t_xmax”字段(32位)相加得到。原创 2023-03-22 11:13:37 · 244 阅读 · 0 评论 -
openGauss数据库的安装运行
openGauss-server:openGauss的主要代码。点击“下一步”,进入“选择客户机操作系统”,选择“Linux”,并在“版本”下拉列表框中选择要安装的对应的Linux版本,这里选择CentOS 7 64位。点击“下一步”,进入“安装操作系统”界面,下载CentOS-7-x86_64-DVD-1810.iso映像文件,并通过“浏览”按钮找到文件位置。继续“下一步”,进入“命名虚拟机”界面,给虚拟机起一个名字,然后单击“浏览”按钮,选择虚拟机系统安装文件的保存位置,建议选择C盘以外的盘。原创 2023-03-22 11:10:44 · 298 阅读 · 0 评论 -
openGauss的高可用特性
⚫ 为了保证故障的可恢复,需要将数据写多份,设置主备多个副本,通过日志进行数据同 步,可以实现节点故障、停止后重启等情况下,openGauss能够保证故障之前的数据无 丢失,满足ACID特性。⚫ RPO :最多可能丢失的数据的时长(RPO): 恢复业务系统后与中断时相比的数据损失量, 反映恢复数据完整性的指标。⚫ 一般多副本部署时使用1主2备模式,总共3个副本,3个副本的可靠性为4个9,可以满足 大多数应用的可靠性要求。 数据有三份,任何一个节点故障,系统仍然有双份数据确保继续运行。原创 2023-03-22 11:11:43 · 367 阅读 · 0 评论 -
openGauss:开源的图像压缩算法
openGauss原创 2023-03-22 10:24:53 · 330 阅读 · 0 评论 -
openGauss增量迁移
增量迁移是指将mysql数据迁移期间(包括全量和增量迁移)产生的增量数据迁移至openGauss端。基于开源三方件mysql-binlog-connector-java解析mysql的binlog,并根据mysql主备并行复制的原理,对可并行的事务在openGauss端采用多线程进行并行回放,以实现MySQL到openGauss端的在线迁移。其中并行事务的判断规则为:如果所有正在回放的事务的最小sequence_number大于该事务的last_committed,那么该事务就可以并行执行。原创 2023-03-21 20:08:09 · 131 阅读 · 0 评论 -
openGauss全量迁移
chameleon是一个用Python3编写的将MySQL迁移至openGauss的实时复制工具,支持初始全量数据的复制以及后续增量数据的实时在线复制功能。chameleon通过一次初始化配置,使用只读模式,将MySQL的数据全量拉取到openGauss。支持在同一快照下,表间数据并行迁移。全量迁移支持的功能:支持表及表数据、视图、触发器、自定义函数、存储过程的全量迁移。原创 2023-03-21 20:09:36 · 260 阅读 · 2 评论 -
迁移MySQL数据库至openGauss
对象、数据全量离线迁移;数据全量&增量校验;原创 2023-03-21 20:08:47 · 206 阅读 · 0 评论 -
全密态数据库等值查询
但无论是传统的线下数据库服务,还是日益增长的云数据库服务,数据库的核心任务都是帮助用户存储和管理数据,在复杂多样的环境下,保证数据不丢失、隐私不泄露、数据不被篡改,同时服务不中断。当查询任务发起后,客户端需要对当前的Query进行解析,如果查询语句中涉及加密列,则对对应的列参数(加密列关联参数)也要进行加密(这里说的加密均需要为确定性加密,否则无法支持对应的查询);加密后的数据会存放在数据库服务端,经过密文运算后服务端返回密文结果集,并在客户端完成最后的解密,获取最终结果。密态数据库的总体架构示意图如。原创 2023-03-21 14:24:02 · 349 阅读 · 0 评论 -
openGauss融合存储引擎
同时把Ustore的数据页面回放按照blkno去分发,提高并行回放的并行程度。融合引擎架构支持了可插拔存储引擎的架构,新增了In-place update存储引擎,索引多版本为索引增加了事务信息,Xlog无锁刷新极大提升了Xlog写入效率,并行Page回放提升了备机回放效率,企业级特性闪回为用户提供了一个稳定的查询状态。新增的In-place update存储引擎很好的解决了Append update存储引擎空间膨胀和元组较大的问题,高效回滚段的设计是In-place update存储引擎的基础。原创 2023-03-21 14:20:55 · 115 阅读 · 0 评论 -
学习openGauss数据库心得,具有高性能、高可用、高安全、易运维、全开放的特点
支持全密态计算,访问控制、加密认证、数据库审计、动态数据脱敏等安全特性,提供全方位端到端的数据安全保护。原创 2023-03-21 12:09:03 · 390 阅读 · 0 评论 -
【openGauss】Basic Features
APIs。原创 2023-03-21 14:23:42 · 42 阅读 · 0 评论