
磐维数据库(PanWeiDB),作为中国移动信息技术中心基于中国本土开源数据库打造的自研数据库产品,其内核能力基于华为openGauss开源软件,并进一步提升了系统稳定性。
磐维数据库(PanWeiDB)是中国移动信息技术中心首个面向ICT基础设施的自研数据库产品。其产品内核能力基于华为openGauss开源软件,并进一步提升了系统稳定性。磐维数据库2.0,具有高性能、高可靠、高安全、高兼容等特点,能够为集中式、分布式、云原生、一体机等多种应用场景提供强大支撑。
磐维数据库的安装过程较为复杂,涉及到创建用户组和用户、配置内核参数、配置NTP服务保证时间同步、配置互信、创建安装目录、上传数据库安装文件并解压、编辑分布式安装配置的yml文件等多个步骤。
磐维数据库可以通过命令行客户端工具(gsql)连接,也可以通过图形客户端工具(如DBeaver)连接。以下是通过gsql连接磐维数据库的示例:
gsql -d hr -p 15400 -U cmdbuser -r通过上述命令,我们可以以操作系统用户panweidb登录数据库主节点,并连接到数据库。
在JDBC中,可以设置currentSchema参数来指定查询模式:
jdbc:panweidb://ip:port/database_name?currentSchema=schema_name更好的方式是在数据库服务端,对业务db或者user进行永久性设置,参考命令如下:
alter database my_db set search_path = my_schema_name;
alter user my_user set search_path = my_schema_name;
alter user my_user in database my_db set search_path to my_schema_name;如果客户端编码与数据库服务端编码不一致,可以显式设置客户端编码。
使用gsql查询表数据的基本语法如下:
SELECT * FROM table_name;以下是一些常用的运维管理SQL命令:
gs_om -t status --detailgs_om -t startgs_om -t stopgs_om -t restartSELECT pw_version();SELECT opengauss_version();SELECT version();磐维数据库支持upsert功能,允许DML语句插入一行数据或者在现存行的基础上更新数据行。以下是两种风格的upsert语法:
INSERT INTO table_name (column1, column2) VALUES (value1, value2) ON DUPLICATE KEY UPDATE column2 = EXCLUDED.column2;INSERT INTO table_name (column1, column2) VALUES (value1, value2) ON CONFLICT(column1) DO UPDATE SET column2 = EXCLUDED.column2;以下是PG风格的upsert使用示例:
CREATE TABLE test_upsert (id INT PRIMARY KEY, code VARCHAR UNIQUE, info VARCHAR);
INSERT INTO test_upsert (id, code, info) VALUES (1, 'code1', 'info');
-- 再次插入id为1的数据时使用upsert语句
INSERT INTO test_upsert (id, code, info) VALUES (1, 'code1', 'info extra1')
ON CONFLICT(id) DO UPDATE SET info = EXCLUDED.info;原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。