nacos数据库使用PostgreSQL及集群配置

本文涉及的产品
云原生数据库 PolarDB MySQL 版,通用型 2核4GB 50GB
云原生数据库 PolarDB PostgreSQL 版,标准版 2核4GB 50GB
简介: 从Nacos2.2版本开始,Nacos提供了数据源扩展插件,以便让需要进行其他数据库适配的用户自己编写插件来保存数据。

nacos默认使用MySQL保存配置数据,在2.2版本之前,如果想使用其他数据库,需要修改nacos源码。2.2版开始提供了数据源扩展插件,以便让需要进行其他数据库适配的用户自己编写插件来保存数据。

一、集群搭建前的准备工作

1.1 服务器准备

Nacos集群需要三台服务器,测试环境分别为:192.168.0.65、192.168.0.144、192.168.0.147

1.2 编译PostgreSQL数据源插件

git clone https://github.com/wuchubuzai2018/nacos-datasource-extend-plugins.git
cd nacos-datasource-extend-plugins/nacos-postgresql-datasource-plugin-ext
mvn package

编译成功后,插件包保存在nacos-datasource-extend-plugins/nacos-postgresql-datasource-plugin-ext/target目录下,名字一般是nacos-postgresql-datasource-plugin-ext-1.0.0-SNAPSHOT.jar,复制出来备用。

复制nacos-datasource-extend-plugins\nacos-datasource-plugin-ext\nacos-postgresql-datasource-plugin-ext\src\main\resources\schema目录下的nacos-pg.sql备用。

1.3 在PostgreSQL上创建nacos数据库并导入nacos-pg.sql

psql -U postgres
create user nacos;
\password nacos
create database nacos encoding=utf8 owner=nacos;
\c nacos nacos
create schema nacos;
\i nacos-pg.sql

二、安装配置Nacos

wget https://github.com/alibaba/nacos/releases/download/2.2.0/nacos-server-2.2.0.tar.gz
tar zxvf nacos-server-2.2.0.tar.gz
cd nacos
mkdir plugins
# 将上面编译好的PostgreSQL数据源插件复制到plugins目录下

nacos的配置文件有两个,位于nacos安装目录的conf目录下,分别是application.properties和cluster.conf

# application.properties
#*************** Config Module Related Configurations ***************#
### If use MySQL as datasource:
spring.datasource.platform=postgresql
### Count of DB:
db.num=1
### Connect URL of DB:
db.url.0=jdbc:postgresql://192.168.0.23:5432,192.168.0.133:5432,192.168.0.157:5432/nacos?targetServerType=primary&tcpKeepAlive=true&reWriteBatchedInserts=true&ApplicationName=nacos_java
db.user.0=nacos
db.password.0=nacos123
### Connection pool configuration: hikariCP
db.pool.config.driverClassName=org.postgresql.Driver

cluster.conf是集群配置,如果不需要集群,请忽略些文件。但启动时需要加上-m standalone参数,否则会报错

# cluster.conf
192.168.0.144:8848
192.168.0.147:8848
192.168.0.65:8848

三、启动与停止

# 启动集群bin/startup.sh
# 启动单机bin/startup.sh -m standalone
# 停止bin/shutdown.sh

启动命令执行完毕后可查看logs目录下nacos.log文件检查启动是否正常,是否有报错等信息。

相关实践学习
使用PolarDB和ECS搭建门户网站
本场景主要介绍基于PolarDB和ECS实现搭建门户网站。
阿里云数据库产品家族及特性
阿里云智能数据库产品团队一直致力于不断健全产品体系,提升产品性能,打磨产品功能,从而帮助客户实现更加极致的弹性能力、具备更强的扩展能力、并利用云设施进一步降低企业成本。以云原生+分布式为核心技术抓手,打造以自研的在线事务型(OLTP)数据库Polar DB和在线分析型(OLAP)数据库Analytic DB为代表的新一代企业级云原生数据库产品体系, 结合NoSQL数据库、数据库生态工具、云原生智能化数据库管控平台,为阿里巴巴经济体以及各个行业的企业客户和开发者提供从公共云到混合云再到私有云的完整解决方案,提供基于云基础设施进行数据从处理、到存储、再到计算与分析的一体化解决方案。本节课带你了解阿里云数据库产品家族及特性。
相关文章
|
23天前
|
NoSQL 关系型数据库 MySQL
微服务架构下的数据库选择:MySQL、PostgreSQL 还是 NoSQL?
在微服务架构中,数据库的选择至关重要。不同类型的数据库适用于不同的需求和场景。在本文章中,我们将深入探讨传统的关系型数据库(如 MySQL 和 PostgreSQL)与现代 NoSQL 数据库的优劣势,并分析在微服务架构下的最佳实践。
|
17天前
|
SQL 关系型数据库 数据库
PostgreSQL数据库报错 ERROR: multiple default values specified for column "" of table "" 如何解决?
PostgreSQL数据库报错 ERROR: multiple default values specified for column "" of table "" 如何解决?
182 59
|
27天前
|
负载均衡 Java Nacos
SpringCloud基础2——Nacos配置、Feign、Gateway
nacos配置管理、Feign远程调用、Gateway服务网关
SpringCloud基础2——Nacos配置、Feign、Gateway
|
11天前
|
Oracle NoSQL 关系型数据库
主流数据库对比:MySQL、PostgreSQL、Oracle和Redis的优缺点分析
主流数据库对比:MySQL、PostgreSQL、Oracle和Redis的优缺点分析
38 2
|
21天前
|
缓存 关系型数据库 数据库
如何优化 PostgreSQL 数据库性能?
如何优化 PostgreSQL 数据库性能?
22 2
|
1天前
|
存储 关系型数据库 MySQL
四种数据库对比MySQL、PostgreSQL、ClickHouse、MongoDB——特点、性能、扩展性、安全性、适用场景
四种数据库对比 MySQL、PostgreSQL、ClickHouse、MongoDB——特点、性能、扩展性、安全性、适用场景
|
2天前
|
存储 关系型数据库 MySQL
一个项目用5款数据库?MySQL、PostgreSQL、ClickHouse、MongoDB区别,适用场景
一个项目用5款数据库?MySQL、PostgreSQL、ClickHouse、MongoDB——特点、性能、扩展性、安全性、适用场景比较
|
1月前
|
关系型数据库 分布式数据库 数据库
开源云原生数据库PolarDB PostgreSQL 15兼容版本正式发布
PolarDB进行了深度的内核优化,从而实现以更低的成本提供商业数据库的性能。
|
1月前
|
SQL 关系型数据库 分布式数据库
PolarDB Proxy配置与优化:提升数据库访问效率
【9月更文挑战第6天】PolarDB是阿里云推出的高性能分布式关系型数据库,PolarDB Proxy作为其关键组件,位于客户端与PolarDB集群间,负责SQL请求的解析与转发,并支持连接池管理、SQL过滤及路由规则等功能。本文详细介绍了PolarDB Proxy的配置方法,包括连接池、负载均衡和SQL过滤设置,并探讨了监控调优、缓存及网络优化策略,以帮助提升数据库访问效率。
31 1
|
28天前
|
SQL 关系型数据库 MySQL
MySQL技术安装配置、数据库与表的设计、数据操作解析
MySQL,作为最流行的关系型数据库管理系统之一,在WEB应用领域中占据着举足轻重的地位。本文将从MySQL的基本概念、安装配置、数据库与表的设计、数据操作解析,并通过具体的代码示例展示如何在实际项目中应用MySQL。
68 0