关于 OpenGauss
OpenGauss 是一款极致性能、安全、可靠的关系型(OLTP)开源数据库。采用协议“木兰宽松许可证”(Mulan PSL V2),用户可以自由复制、使用、修改、分发,不论修改与否。
OpenGauss 支持多平台,标准 SQL,拥有高性能,高可靠,灵活扩展等特性,是数据库二次开发的良好选择。
更多内容见:OpenGauss 官网。
快速开始
前置
首先,我们需要准备一台或者多台虚机。本次演示我们准备一台 2C4G 的虚机,你可以选择大于等于这个规格的虚机进行试验。
创建用户和组
这里使用 root 用户登录。
我们对于 OpenGauss 的试验是基于 omm:dbgroup(用户:组)来做的,所以我们需要首先创建用户和组。
# 创建组
groupadd dbgroup
# 向组中添加用户
useradd -g dbgroup omm
# 设置用户omm的密码为Gauss_234
passwd omm
获取安装包
我们可以从这里下载 OpenGauss Server 安装包,个人学习建议使用极简版。
下载后,我们将安装包上传到服务器,然后创建工作目录,然后就可以开始进行解压安装操作了。
# 创建工作目录
mkdir -p /opt/software/openGauss
# 修改目录权限
chown -R omm:dbgroup /opt/software
# 上传OpenGauss安装包到/opt/software下
# 解压OpenGauss
tar -jxf openGauss-x.x.x-openEuler-64bit.tar.bz2 -C /opt/software/openGauss
开始安装
我们准备好上面的工作后,OpenGauss 安装包已经被解压到了/opt/software/openGauss 目录下,我们进入 simpleInstall 目录中,执行如下命令开始安装。
# 进入安装目录
cd /opt/software/openGauss/simpleInstall
# 执行安装脚本并制定数据库初始密码
sh install.sh -w Gauss_234
经过一系列的日志,我们的数据库会安装成功。最后系统会提示你是否需要创建 demo 数据库,我们选择 yes 即可。
检查安装结果
为了验证我们已经成功安装了 OpenGauss,我们可以执行命令ps -ef | grep gauss
进行检查。
简单使用
登录数据库
gsql -d postgres
如上,=#
代表管理员用户,普通用户以=>
标识。
数据库操作
查看数据库命令:\l
选择数据库命令:\c {数据库名}
创建数据库命令:CREATE DATABASE {数据库名};
删除数据库命令:DROP DATABASE {数据库名};
修改数据库命令:ALTER DATABASE database_name RENAME TO new_name;
数据表操作
创建表命令:
CREATE TABLE demo(
name char(50),
age integer
);
在这里,如果你使用的是 mobaxterm 连接的服务器,可能会出现语法错误(syntax error)的情况,我是直接进入到 vnc 解决了这个问题。
查看数据表命令:\d
数据表插入数据命令:
insert into demo values(
'phyger',
18
);
查询数据命令:
SELECT * FROM demo;
查看表结构命令:\d demo;
更新行数据命令:update demo set name='phygerNew' where name='phyger';
删除数据命令:delete from demo where age=19;
ORDER BY 字句:
# 升序
select * from demo order by age ASC;
# 降序
select * from demo order by age DESC;
DISTINCT 关键字:查询去重
假设数据库中有两个不同年龄的同名人,DISTINCT 可以帮助我们将查询出来的重复数据唯一化(只保留查询到的第一行)
# name唯一查询
select distinct name from demo;
# name唯一查询,携带age数据
select distinct name,age from demo;
GROUP BY 字句:分组查询
select name from demo group by name;
将查询结果按照某一列的值进行分组,值相等的为一组。
HAVING 子句:用于在分组的基础上筛选数据
select name from demo group by name having count(name) > 2;
count(name)意为:以 name 分组且分组成员数大于 1 的分组,即 phyger。
最后
以上我们简单介绍了 OpenGauss 的入门用法,更多关于开发、SDK 等高级用法,可以查看官方文档。
作为国产数据库的代表产品,众多的国产数据库都在 OpenGauss 的基础上成长起来的,也衷心祝福 OpenGauss 能够越来越好。
Q&A
Q1:OpenGauss 部署提示 current SEMMNI value is: 128
A1:我们需要在/etc/sysctl.conf 中添加kernel.sem = 250 32000 100 999
,然后执行sysctl -p
使配置生效。
评论区