当前位置: 首页 > news >正文

Nacos安装及数据持久化

1.Nacos安装及数据持久化

1.1下载nacos

下载地址:https://nacos.io/download/nacos-server/
不用安装,直接解压缩即可。
在这里插入图片描述

1.2配置文件增加jdk环境和修改单机启动standalone

找到bin目录下的startup.cmd文件,添加以下语句(jdk路径根据自己实际来):
set “JAVA_HOME=D:\code\jdk1.8.0_271”
在这里插入图片描述

1.3启动nacos

nacos安装包路径bin目录下双击startup.cmd
或者bin目录下执行cmd,输入命令:startup.cmd -m standalone
在这里插入图片描述
注意:1.4.1版本开始该脚本默认是以集群方式运行,若需要单节点运行需要添加-m standalone参数运行脚本;

1.4访问测试

访问地址:http://localhost:8848/nacos
默认端口8848,用户名:nacos,密码:nacos
看是否能访问并登陆成功。

2. 数据持久化到MySQL(2.0.4版本)

2.1为什么要配置Nacos持久化

Nacos默认有自带嵌入式数据库derby,但是如果做集群模式的话,就不能使用自己的数据库不然每个节点一个数据库,那么数据就不统一了,需要使用外部的mysql。

2.2修改application.properties文件

修改nacos的conf目录下的application.properties文件,可以直接将原有文件里的数据库连接注释打开,更改数据库、账号和密码:注意默认时区配置改为serverTimezone=Asia/Shanghai

#数据库配置,0表示第一个数据库
db.url.0=jdbc:mysql://127.0.0.1:3306/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=Asia/Shanghai
db.user.0=root
db.password.0=123456
在这里插入图片描述

2.3 创建nacos_config数据库

本地MySQL创建名为nacos_config的数据。
在这里插入图片描述

2.4 数据库生成数据

将nacos的conf目录下的nacos-mysql.sql数据库脚本导入上面配置的数据库中,直接将脚本复制到sqlyog里执行即可。
在这里插入图片描述

2.5 重启服务

重启nacos,打印的日志可以看到使用的是外部数据库,而不是默认内置数据库:use embedded storage
在这里插入图片描述

2.6 验证数据是否写入到mysql

登录Nacos管理平台并创建配置,然后查看MySQL里的config_info表是否有对应数据,MySQL有对应数据则表示持久化配置成功。
在这里插入图片描述
在这里插入图片描述

3 V2.4.X版本相较于历史版本的区别

3.1 数据库文件不同

1、V2.0.X版本数据库文件是nacos-mysql.sql,而V2.4.X版本数据库文件是mysql-schema.sql。
2、mysql-schema.sql相较于nacos-mysql.sql,在config_info等三个表多了个字段encrypted_data_key。
所以,若一开始就是安装的V2.4.X版本的,则直接导入mysql-schema.sql即可。若是在历史版本V2.0.X升级到V2.4.X的操作请看下一节。

3.2历史版本升级(V2.0.X升级到V2.4.X)

两个版本只是在数据库表及字段上有区别 ,所以在原有版本数据库基础上增加字段即可:
ALTER TABLE config_info ADD COLUMN encrypted_data_key text NOT NULL COMMENT ‘secret key’;
ALTER TABLE config_info_beta ADD COLUMN encrypted_data_key text NOT NULL COMMENT ‘secret key’;
ALTER TABLE his_config_info ADD COLUMN encrypted_data_key text NOT NULL COMMENT ‘secret key’;

http://www.xdnf.cn/news/7651.html

相关文章:

  • ESP32之本地HTTP服务器OTA固件升级流程,基于VSCode环境下的ESP-IDF开发(附源码)
  • 【Spring Boot】MyBatis入门:连接Mysql数据库、测试单元、连接的常见错误
  • 汇编语言中的数据
  • 基于C++(MFC)的细胞识别程序
  • 人工智能在后端开发中的革命:从架构到运维
  • 前端:uniapp中uni.pageScrollTo方法与元素的overflow-y:auto之间的关联
  • 极狐GitLab 项目导入导出设置介绍?
  • 架构师面试(三十一):IM 消息收发逻辑
  • 手撕STL——vector
  • 利用DeepSeek设计一个HTML批量转换工具设计
  • Hadoop的三大结构及其作用?
  • hadoop的三大结构及各自的作用
  • yarn的定义
  • 「数据可视化 D3系列」入门第九章:交互式操作详解
  • 自动驾驶与机器人算法学习
  • 【区块链通用服务平台及组件】京北方分布式身份管理平台 | FISCO BCOS 应用案例
  • java八股之并发编程
  • 医院数据中心智能化数据上报与调数机制设计
  • 仿腾讯会议项目开发——界面关闭功能实现
  • Flink介绍——实时计算核心论文之Kafka论文详解
  • java输出、输入语句
  • Vue3 Composition API与十大组件开发案例详解
  • 杂记-LeetCode中部分题思路详解与笔记-HOT100篇-其四
  • 【datawhaleAI春训营第一期笔记】AI+航空安全
  • Tensorflow实现用接口调用模型训练和停止训练功能
  • Mac mini 安装mysql数据库以及出现的一些问题的解决方案
  • 【前端HTML生成二维码——MQ】
  • uni-app 安卓10以上上传原图解决方案
  • 基于FPGA的AES加解密系统verilog实现,包含testbench和开发板硬件测试
  • 4.Rust+Axum Tower 中间件实战:从集成到自定义