我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Nacos 2.2+支持不同种类的数据库(多种数据库)

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Nacos 2.2+支持不同种类的数据库(多种数据库)

在nacos 2.2+中,nacos的开发团队对数据库访问进行了封装,使用SPI的技术对多种数据库进行支持。

1、模块结构分析

数据库SQL操作在nacos-datasource-plugin中,内置derby和mysql的支持

 2、代码内容分析

com.alibaba.nacos.plugin.datasource.impl.mysql

com.alibaba.nacos.plugin.datasource.impl.derby

对以上两个包中的java类进行代码分析,不难发现,nacos对不同数据库的sql操作体现在分页查询的异样性。nacos的内置支持,已经提供了两种具有代表性的分页查询支持。

select * from table limit [offset,] rows

offset [start] rows fetch next [count] rows only

 

3、支持limit的数据库的配置

对于支持 limit [offset,] rows的数据库,可以按照以下方式进行配置。

常见的数据库如MySQL、MariaDB等

# 固定值,用于锁定limit相关的配置spring.sql.init.platform=mysql# 配置数据库连接db.num=1db.url.0=jdbc:mysql://p.local:3306/nacosdb.user.0=nacosdb.password.0=nacos# 配置数据库驱动db.pool.config.driverClassName=com.mysql.cj.jdbc.Driver

4、支持offset fetch的数据库的配置

对于支持 offset [start] rows fetch next [count] rows only,可以按照以下方式进行配置。

常见的数据库如Oracle 12c+、SQL Server 2012+、PostgreSQL 10+等

# 固定值,用于锁定offset fetch相关的配置spring.sql.init.platform=derby# 配置数据库连接db.num=1db.url.0=jdbc:postgresql://p.local:5432/nacosdb.user.0=nacosdb.password.0=nacos# 配置数据库驱动db.pool.config.driverClassName=org.postgresql.Driver

5、其他数据库

对于不支持以上两种方式进行分页查询的数据库,需要自行进行扩展。具体扩展方式如下:

  1. 复制com.alibaba.nacos.plugin.datasource.impl.mysql包中的所有类
  2. 修改SQL语句和数据源类型
  3. 写入spi文件

 

 配置信息如下:

# 锁定指定配置spring.sql.init.platform=oracle# 配置数据库连接db.num=1db.url.0=jdbc:oracle:thin:@p.local:1521/orcldb.user.0=nacosdb.password.0=nacos# 配置数据库驱动db.pool.config.driverClassName=oracle.jdbc.driver.OracleDriver

 

来源地址:https://blog.csdn.net/p1g2c32006/article/details/130586377

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Nacos 2.2+支持不同种类的数据库(多种数据库)

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Qt数据库(1) - 支持的数据库种类(ver 5.14.0)

Qt SQL 模块使用驱动插件来和不同数据库管理系统的API进行通信。Qt安装包中自带几种类型数据库的驱动,其它类型的驱动可以自己用官网提供的源码进行编译,然后放到Qt插件下的sqldrivers目录中即可生效。文档里提到在所有平台上SQLite驱动是测试最完
Qt数据库(1) - 支持的数据库种类(ver 5.14.0)
2020-06-23

支持多种数据库的管理软件-Database .NET

今天推荐一款别样的,支持众多数据库类型的管理工具-Database .NET。
支持多种数据库的管理软件-Database .NET
2024-04-23

redis数据库支持的数据类型

redis 数据库支持多种数据类型,包括:字符串、哈希、列表、集合、有序集合、流、位图、地理空间和 hyperloglog。选择合适的数据类型取决于数据结构、访问模式和空间效率。通过仔细选择,可以优化 redis 的性能和存储效率。Redi
redis数据库支持的数据类型
2024-04-19

Redis支持哪种类型的数据持久化

Redis支持以下几种类型的数据持久化:RDB持久化:在指定时间间隔内将内存中的数据保存到磁盘上,生成一个快照文件。默认情况下,Redis每隔60秒检查是否需要进行持久化,如果需要的话,就开始持久化进程。AOF持久化:将Redis执行的写指
Redis支持哪种类型的数据持久化
2024-03-11

Java Spring中怎么同时访问多种不同数据库

这篇文章主要介绍“Java Spring中怎么同时访问多种不同数据库”,在日常操作中,相信很多人在Java Spring中怎么同时访问多种不同数据库问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Java Sp
2023-06-17

Python支持的数据类型有哪几种

Python支持的数据类型有以下几种:数字类型(Number):包括整数(int)、浮点数(float)、复数(complex)等。字符串类型(String):由字符组成的序列,用单引号(')或双引号(")括起来。列表类型(List):
2023-10-24

Kylin支持哪种类型的数据模型

Kylin支持多维数据模型,包括星型模型和雪花模型。它可以处理具有事实表和多个维度表的复杂数据模型。Kylin还支持维度表之间的多对多关系和层次结构。Kylin还支持面向文本和时间序列的数据建模。Kylin还支持维度表之间的多对多关系和层次
Kylin支持哪种类型的数据模型
2024-03-06

oracle数据库支持的数据类型有哪些?

oracle 数据库提供多样化数据类型,包括:数字类型:integer、float、double precision、number、dec文本类型:char、varchar2、clob、nclob日期和时间类型:date、time、time
oracle数据库支持的数据类型有哪些?
2024-05-10

Cassandra是哪种类型的数据库

Cassandra是一种分布式的NoSQL数据库系统。它设计用来处理大规模的数据,具有高可用性和高性能的特点。Cassandra采用的分布式架构使得数据可以存储在多个节点上,从而实现了数据的横向扩展。它是一个开源的项目,最初由Faceboo
Cassandra是哪种类型的数据库
2024-04-09

Teradata如何支持多种数据格式和数据类型的存储与查询

Teradata支持多种数据格式和数据类型的存储与查询,包括结构化数据和非结构化数据。Teradata提供了多种数据类型用于存储不同类型的数据,例如整数、浮点数、字符串、日期时间等。此外,Teradata还支持嵌套数据类型,如数组、结构体、
Teradata如何支持多种数据格式和数据类型的存储与查询
2024-04-09

Teradata数据库系统支持的数据类型有哪些

在Teradata数据库系统中,支持的数据类型包括:数值类型:INTEGER、DECIMAL、FLOAT、DOUBLE PRECISION等。字符串类型:CHAR、VARCHAR、CLOB、GRAPHIC、VARGRAPHIC等。日期和
Teradata数据库系统支持的数据类型有哪些
2024-04-09

localstorage解析:它是一种何种类型的数据库技术?

了解localstorage:它是一种怎样的数据库技术?在Web开发中,数据的存储和处理一直是一个重要的问题。随着计算机技术的不断发展,各种数据库技术也相继出现。其中,localstorage是一种被广泛运用的数据库技术。它是HTML5提
localstorage解析:它是一种何种类型的数据库技术?
2024-01-15

PHP 对象关系映射与数据库抽象层中多数据库支持的实践

使用 php 进行多数据库支持,可以使用 orm(对象关系映射)和 dal(数据库抽象层)工具。orm 示例:doctrine 允许通过配置连接参数支持多个数据库,例如 mysql 和 postgresql。dal 示例:propel 可以
PHP 对象关系映射与数据库抽象层中多数据库支持的实践
2024-05-07

有什么报表工具支持多个不同的数据源?

报表工具对非关系型数据源的支持,例如文件、webservice 接口、nosql 数据库等,报表工具对这些数据源类型支持的越多越好; 报表工具对不同类型数据源的关联处理方式是否简单,关联计算后的性能如何; 报表工具的性价比,相同功能支持下价位越低越
有什么报表工具支持多个不同的数据源?
2020-05-11

MySQL数据库的多种连接方式及工具

目录一、mysql命令行客户端二、CMD命令进行连接 三、MySQL图形化管理工具 1、Navicat Premium 的使用2、DataGrip 的使用四、不同的电脑上使用Mys编程客栈ql一、MySQl命令行客户端在Mysql安装完成
2023-03-23

编程热搜

目录