因项目原因,需要给Nacos 1.4.1配置一个MySQL数据库。我的Nacos配置在Docker中,于是进入到Docker容器中,我的Nacos容器名称叫nacos
docker exec -it nacos bash进入容器之后,再进入到配置文件所在目录conf
cd conf修改配置文件application.properties
vi ./application.properties修改配置文件,修改如下位置:(这个是一个错误示范,看看长个记性)
db.url.0=jdbc:mysql://${MYSQL_SERVICE_HOST}:${MYSQL_SERVICE_PORT}/${MYSQL_SERVICE_DB_NAME}?${MYSQL_SERVICE_DB_PARAM:characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true}
db.user=${MYSQL_SERVICE_USER}
db.password=${MYSQL_SERVICE_PASSWORD}我的MySQL容器的地址是
172.17.0.2查看docker容器ip地址的方法,看我另外一个帖子。账号密码都是root,修改成以下内容
db.url.0=jdbc:mysql://${MYSQL_SERVICE_HOST:172.17.0.2}:${MYSQL_SERVICE_PORT:3306}/${MYSQL_SERVICE_DB_NAME:nacos_config}?${MYSQL_SERVICE_DB_PARAM:characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true}
db.user=${MYSQL_SERVICE_USER:root}
db.password=${MYSQL_SERVICE_PASSWORD:root}按 wq 保存。然后exit退出容器。然后重启nacos容器
docker restart nacos无效。。。有点尴尬。然后度娘发现少改一行
spring.datasource.platform=${SPRING_DATASOURCE_PLATFORM:""}修改一下这行.(这个是一个错误示范,看看长个记性)
spring.datasource.platform=${SPRING_DATASOURCE_PLATFORM:"mysql"}保存退出。重启容器之后,依旧无法连接数据库。裂开。。。。
后面发现,这个值后面的mysql是不需要加双引号的。。。修改成mysql
spring.datasource.platform=${SPRING_DATASOURCE_PLATFORM:mysql}保存退出。重启容器,顺利连接上数据库。最后附上完整and正确的配置修改。
修改前
spring.datasource.platform=${SPRING_DATASOURCE_PLATFORM:""}
db.url.0=jdbc:mysql://${MYSQL_SERVICE_HOST}:${MYSQL_SERVICE_PORT}/${MYSQL_SERVICE_DB_NAME}?${MYSQL_SERVICE_DB_PARAM:characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true}
db.user=${MYSQL_SERVICE_USER}
db.password=${MYSQL_SERVICE_PASSWORD}修改后
spring.datasource.platform=${SPRING_DATASOURCE_PLATFORM:mysql}
db.url.0=jdbc:mysql://${MYSQL_SERVICE_HOST:172.17.0.2}:${MYSQL_SERVICE_PORT:3306}/${MYSQL_SERVICE_DB_NAME:nacos_config}?${MYSQL_SERVICE_DB_PARAM:characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true}
db.user=${MYSQL_SERVICE_USER:root}
db.password=${MYSQL_SERVICE_PASSWORD:root} | 留言与评论(共有 0 条评论) “” |