问题1:nacos闪退
解决方案:通常是jdk环境变量配置有问题,nacos获取不到环境变量所以闪退。因为nacos的启动文件会获取JAVA_HOME,如果配置的不对,会直接闪退。如图所示,nacos启动文件最开始就是获取环境变量,获取不到就提示
问题2:nacos页面修改登录密码失败,连不上mysql
解决方案:nacos在linux离线环境使用内置derby数据库,修改登录密码:
1、下载derby连接包,下载地址Apache Derby: Downloads
2、上传到linux服务器,解压tar.gz文件,切到bin目录,使用sh ij登录
3、连接数据库,使用如下命令
connect 'jdbc:derby:/home/mate/nacos/data/derby-data;create=true'
其中 /home/mate/nacos/data/derby-data
是nacos的data目录下的路径,按你项目的实际路径修改即可
连接derby之前,要先停掉nacos服务
4、修改用户密码
show tables;
修改密码:
update NACOS.USERS set PASSWORD='$2a$10$EuWPZHzz32dJN7jexM34MOeYirDdFAZm2kuWj7VEOJhhZkDrxfvUu' where USERNAME='nacos';
密码可以使用如下代码生成
public static void main(String[] args) { System.out.println(new BCryptPasswordEncoder().encode("nacos")); }
更新表数据时要注意table_schema值,如果不指明table_schema值,更新会报错
密码修改后,要关闭数据库连接,再去启动nacos,不然会报错。单机环境下,只允许一个实例连接derby
问题3:不能访问服务器上的redis
解决方案:
不能访问redis服务:
1、先看一下是不是防火墙影响的,可以检查服务器上的其他服务是不是通的,例如用telnet 服务器ip 8848检查nacos能不能连上,可以用telnet 服务器ip 6379访问redis
2、检查redis.conf文件的bind设置,如果没有配置对应的ip,也是不能访问的
3、protected-mode yes保护模式要设置成no
4、检查是否设置了密码
如果有疑问,可以联系我的QQ1391197821,欢迎一起探讨