我正在创建一个使用 springboot 和 Couchbase 进行响应式(Reactive)编程的演示项目。
我在 application.properties 文件中设置了以下属性:
spring.couchbase.bootstrap-hosts=localhost
spring.couchbase.bucket.name=vanquish
spring.couchbase.bucket.password=
spring.data.couchbase.repositories.type=auto
因为我在创建它时没有任何存储桶级别的密码。尽管如此,由于以下异常,服务无法启动:
Caused by: com.couchbase.client.java.error.InvalidPasswordException: Passwords for bucket "vanquish" do not match.
at com.couchbase.client.java.CouchbaseAsyncCluster$OpenBucketErrorHandler.call(CouchbaseAsyncCluster.java:651) ~[java-client-2.5.9.jar:na]
at com.couchbase.client.java.CouchbaseAsyncCluster$OpenBucketErrorHandler.call(CouchbaseAsyncCluster.java:634) ~[java-client-2.5.9.jar:na]
at rx.internal.operators.OperatorOnErrorResumeNextViaFunction$4.onError(OperatorOnErrorResumeNextViaFunction.java:140) ~[rxjava-1.3.8.jar:1.3.8]
at rx.internal.operators.OnSubscribeMap$MapSubscriber.onError(OnSubscribeMap.java:88) ~[rxjava-1.3.8.jar:1.3.8]
at rx.observers.Subscribers$5.onError(Subscribers.java:230) ~[rxjava-1.3.8.jar:1.3.8]
at rx.internal.operators.OperatorObserveOn$ObserveOnSubscriber.checkTerminated(OperatorObserveOn.java:273) ~[rxjava-1.3.8.jar:1.3.8]
at rx.internal.operators.OperatorObserveOn$ObserveOnSubscriber.call(OperatorObserveOn.java:216) ~[rxjava-1.3.8.jar:1.3.8]
at rx.internal.schedulers.ScheduledAction.run(ScheduledAction.java:55) ~[rxjava-1.3.8.jar:1.3.8]
我尝试搜索所有属性,但无法找到任何相关属性来设置用户名和密码或在 couchbase 中为存储桶设置密码。
最佳答案
假设您使用的是 couchBase 5.x 版:
根据couchBase documentation :
To access cluster-resources, Couchbase Server users — administrators and applications — must specify a username and password.
要遵循的步骤:
http://<couchBase-host>:8091/ui/index.html#!/overview
在“添加用户”表单中添加以下参数:
用户名:此 必须是存储桶名称,在您的情况下
vanquish
.密码:设置你想要的密码,这个 必须是
spring.couchbase.bucket.password
中设置的值.角色:转到 Roles -> Bucket Roles -> Bucket Admin 并选择您的存储桶,在您的情况下
vanquish
.点击“保存”。
执行此操作后并在
spring.couchbase.bucket.password
中设置密码它应该工作。
关于spring-boot - Couchbase 中的存储桶密码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51496589/