Nacos做配置中心用,重启Nacos导致配置丢失处理\配置持久化

配置文件

在这里插入图片描述

内容

在这里插入图片描述
直接点发布,提示不用管

读取Nacos中的配置

引入依赖

   <!--nacos 依赖-->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-alibaba-nacos-config</artifactId>
        </dependency>

在项目中新建bootstrap.properties

# 配置中心位置
spring.cloud.nacos.config.server-addr=192.168.56.1:8848

# dataid
spring.application.name=service-blogs

在这里插入图片描述

spring 加载配置文件顺序

1、 bootstrap.yml(bootstrap.properties)   由父Spring ApplicationContext加载   可以理解成系统级别的一些参数配置,这些参数一般不会变
2、application.yml(application.properties)  可以用来定义应用级别的

启动项目 就会去nacos中读取

注意

当在配置文件中添加了

spring.profiles.active=dev

那么配置文件名字需要修改为

service-blogs-dev.properties

在这里插入图片描述

配置中心命名空间切换

dev test prod
在这里插入图片描述

新建空间中的配置文件

在这里插入图片描述

查看id

在这里插入图片描述

修改配置文件 添加空间Id

在这里插入图片描述

读取多配置文件

在这里插入图片描述
在这里插入图片描述

多文件写法

spring.cloud.nacos.config.ext-config[0].data-id=port.properties
# 开启动态刷新配置 否则配置文件修改 工程无法感知
spring.cloud.nacos.config.ext-config[0].refresh=true

在这里插入图片描述

重启nacos之前的配置没了

处理方式
1、去conf文件夹下面找到sql文件 执行一下
在这里插入图片描述
在这里插入图片描述

配置文件添加数据库连接地址

[root@10 conf]# cat application.properties
spring.datasource.platform=mysql
db.num=1
db.url.0=jdbc:mysql://192.168.56.1:3306/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
db.user=root
db.password=root

杀掉nacos进程 重新启动

单机启动
sh startup.sh -m standalone

Linux启动Nacos的坑 (阿里云服务器)

首先需要安装Java环境,不用说哈

启动(单机) sh startup.sh -m standalone

然后访问直接报错,显示无该访问请求,带里错误!
在这里插入图片描述

解决方案:

1、配置安全组
在这里插入图片描述

2、查看防火墙是否开了端口
一、防火墙的状态。有时打开防火墙外部不能访问。
防火墙的命令:
查看防火墙状态 systemctl status firewalld
开启防火墙 systemctl start firewalld
关闭防火墙 systemctl stop firewalld
开启防火墙 service firewalld start
禁止开机启动防火墙 systemctl disable firewalld.service
先用:systemctl unmask firewalld.service
然后:systemctl start firewalld.service
二、查看你的服务的端口号是否对外开放。
命令:
1.查询已经对外开放的端口
netstat -anp
2.查询指定端口是否已经开放
firewall-cmd --query-port=8848/tcp
在这里插入图片描述
返回yes/no。此时也有可能返回firewalld is not running,此时需要打开防火墙在开放端口。
开放端口号命令:
添加指定需要开放的端口:
firewall-cmd --add-port=8848/tcp --permanent
在这里插入图片描述
重载入添加的端口:
firewall-cmd --reload
在这里插入图片描述

查询指定端口是否开启成功:
firewall-cmd --query-port=8848/tcp
在这里插入图片描述
注:移除指定端口:
firewall-cmd --permanent --remove-port=8848/tcp

然后就可以访问了!!!!!!!!

【参考文献】https://www.freesion.com/article/32891399747/


版权声明:本文为qq_17369545原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。