您网站建设,手机在线logo生成器,网站开发外包维护合同范本,电商软件什么品牌好引入
全面适配 | openEuler操作系统 openGauss数据库 开篇
1、openEuler欧拉操作系统 百度百科#xff1a;openEuler是覆盖全场景的创新平台#xff0c;在引领内核创新#xff0c;夯实云化基座的基础上#xff0c;面向计算架构互联总线、存储介质发展新趋势#xff0c;…引入
全面适配 | openEuler操作系统 openGauss数据库 开篇
1、openEuler欧拉操作系统 百度百科openEuler是覆盖全场景的创新平台在引领内核创新夯实云化基座的基础上面向计算架构互联总线、存储介质发展新趋势创新分布式、实时加速引擎和基础服务结合边缘、嵌入式领域竞争力探索打造全场景协同的面向数字基础设施的开源操作系统。
2、openGauss数据库
百度百科openGauss 是一款全面友好开放携手伙伴共同打造的企业级开源关系型数据库。openGauss采用木兰宽松许可证v2发行提供面向多核架构的极致性能、全链路的业务、数据安全、基于AI的调优和高效运维的能力。openGauss深度融合华为在数据库领域多年的研发经验结合企业级场景需求持续构建竞争力特性。同时openGauss也是一个开源、免费的数据库平台鼓励社区贡献、合作。
实战
这里我们来记录一次在欧拉操作系统上进行openGauss数据库基本操作总结
1、版本选取 2、安装部署
【我和openGauss的故事】记一次基于在鲲鹏欧拉操作系统上openGauss实践过程
【我和openGauss的故事】记一次基于在银河麒麟系统上适配openGauss进阶之旅
3、基本操作
首先我们进入数据库gsql命令行界面测试数据库连接是否正常
gsql -d postgres -p port查看数据库系统的数据库列表
\l从上面我们可以看到databases分别有postgres、template0、template1…
接下来我们来创建一个普通账户所属下的数据库用于我们在数据库客户端连接管理工具连接。
切换到我们之前创建的数据库
\c db_tpcc注openGauss安装时创建的管omm用户-可访问初始数据库
创建用户
CREATE USER yd WITH PASSWORD DayKnowApply123; 用户授权
alter user yd sysadmin;创建数据库
CREATE DATABASE db_know OWNER yd; 退出当前数据库通过gsql命令行工具-新用户连接到创建的数据库
gsql -d db_know -p 26000 -U yd -W DayKnowApply123 -r创建SCHEMA
CREATE SCHEMA yd AUTHORIZATION yd;创建表
CREATE TABLE know_center (firstcol int); 插入VS查询
INSERT INTO know_center values (1);
SELECT * from know_center; 然后那如何在数据库客户端连接工具去可视化管理我们的数据库 当然新建连接-输入IP、PORT、DB、USER信息就可以进行可视化管理了包括我们最常见的SQL增删改查命令熟悉gsql的命令行工具那也是一样的操作 当我们需要进行数据库重新启动则可以重启服务
gs_om -t restart查看进程
ps ux | grep gaussdb 或 ps -ef | grep gaussdb当然我们也可以通过终端模拟工具去连接服务 从top -c来看其中st为0没有cost time去等待真实的cpu资源这也表明我们的vm得到了所有必要的cpu资源。
注当所给机器设备资源配置不足服务内存较小过载可使用Swap交换技术确保服务器稳定运行若配置了swap分区当系统的物理内存不够用时会使用swap分区-虽然可以增大物理内存大小的限制但若是由于内存不足使用到swap分区会增加系统的响应时间从而导致性能变差。因此在物理内存充足或者性能敏感的系统中关闭swap交换内存swapoff -a防止把数据库的缓冲区内存淘汰到磁盘上
最后我们在项目工程中去替换传统数据库Oracle/MySql/SqlServer实现国产化数据库平滑替代 // 驱动-连接地址-账号-密码等信息
String driverClassName org.postgresql.Driver;
String url jdbc:postgresql://ip:port/postgres;
String username yd;
String password DayKnowApply123;
// 加载驱动
Class.forName(driverClassName);
// 获取数据库连接对象
Connection con (Connection) DriverManager.getConnection(url,username,password);
// 获取数据库操作对象
PreparesStatement ps con.preparesStatement(SELECT COUNT(*) FROM KNOW_CENTER;);
// 执行sql
ResultSet rs ps.executeQuery();
// 数据库产品名称
DatabaseMetaData metaData (DatabaseMetaData) con.getMetaData();
// 这里为国产数据库-适配在xml指定国产数据库的databaseId奠定基础
System.out.println(数据库产品名称: metaData.getDatabaseProductName());
最后需关闭连接close释放资源-rs-ps-con. 总结
从全面适配工作改造下来这也确实给了DBA以及研发工程师对数据库SQL方言语句书写的一些约束规范。
当在实际项目工程中出现厂商中SQL方言函数也覆盖不全的话则可以厂商提供或者通过通用ORM组件的方式去改造SQLopenGauss的一些SQL高阶语法参见-opengauss 3.1.1 SQL特性
随着国产化进程的加速我们的应用系统、国产化数据库、中间件不论是平稳运行在麒麟操作系统之上还是在鲲鹏欧拉操作系统之上都象征着国产化操作系统在软、硬件适配等方面取得了一定的成就国产化数据库系统也在不断为兼容拓展传统数据库SQL方言-迭代升级开发者生态日趋完善。
附技术多元化是一个趋势多语言并存多数据库适配多环境兼容让我们一起为国产化社区贡献一份力量为开源打call支持国产