1.正常解压压缩文件后,在bin目录下直接双击startup.cmd启动Nacos(或bin目录下命令行输入startup.cmd,新版本需要输入startup,cmd -m standalone),发现启动报错。
报错信息我们可以看到大量的sql错误,其中不乏缺少表,jdbc连接异常这样的报错
- 打开Nacos安装的config目录,我们看到application.properties配置文件,来到数据库的部分(我用的是mysql)我们把mysql注释部分的内容打开。
里面的db.user.0也改成和上面一样
图中绿线是需要取消注释的部分,红色箭头则需要更改为自己数据库的账号密码
打开mysql的注释之后我们发现config下有一个nacos-mysql.sql文件。我们将里边的所有内容复制,打开我们的数据库,新建一个库,库名为:nacos,之后新建查询,将复制的内容粘贴,并运行,得到我们的表结构。
至此我们将nacos重新启动,问题解决!(BTW,nacos控制台的登陆页默认的账号密码都为nacos)
2 .nacos控制台的登陆账号密码错误:
这个问题反思是不是自己动过插入user表的sql语句,修改了password的值(笔者就是一开始去修改了,以为是乱码),实则是这个密码是加密过的,直接修改,那么登录时一定报错。
解决:
用nacos-mysql.sql文件原有的插入user表中password的插入值(这个就是nacos的加密字样),登陆时账号密码都输入nacos即可。
自己给密码加密后再扔到user表中password字段里。(可以使用springsecurity的工具)
补充:
经过后续学习,了解到综上操作是Nacos数据库支持中,将内置数据库derby切换至mysql的操作。