学习Seata1.5.2过程中,要把config.txt配置发布到Nacos,发现很少在Windows上执行nacos-config.sh。

1)首先发现可以用git bash执行.sh文件

Think-bo@Think-Bob MINGW64 /e/Program Files/seata/script/config-center/nacos
$ bash nacos-config.sh -h 127.0.0.1 -p 8899 -u nacos -w nacos
set nacosAddr=localhost:8848
set group=SEATA_GROUP
cat: /e/Program: No such file or directory
cat: Files/seata/script/config-center/config.txt: No such file or directory
=========================================================================
 Complete initialization parameters,  total-count:0 ,  failure-count:0
=========================================================================
 Init nacos config finished, please start seata-server.

  很可惜,执行失败,找不到路径

2)暴力修改nacos-config.sh中的路径(因为没有找到合适函数来代替dirname)

for line in $(cat "E:\Program Files\seata\script\config-center\config.txt" | sed s/[[:space:]]//g); do
    if [[ "$line" =~ ^"${COMMENT_START}".*  ]]; then
      continue
    fi
    count=`expr $count + 1`
      key=${line%%=*}
    value=${line#*=}
      addConfig "${key}" "${value}"
done

  nice,顺利执行,前进一大步,又有新的报错

nacos-config.sh: line 88: [: too many arguments
Set store.redis.sentinel.masterName= failure
nacos-config.sh: line 88: [: too many arguments
Set store.redis.sentinel.sentinelHosts= failure
Set store.redis.maxConn=10 successfully
Set store.redis.minConn=1 successfully
Set store.redis.maxTotal=100 successfully
Set store.redis.database=0 successfully
nacos-config.sh: line 88: [: too many arguments
Set store.redis.password= failure
Set store.redis.queryLimit=100 successfully
Set server.recovery.committingRetryPeriod=1000 successfully
Set server.recovery.asynCommittingRetryPeriod=1000 successfully
Set server.recovery.rollbackingRetryPeriod=1000 successfully
Set server.recovery.timeoutRetryPeriod=1000 successfully
Set server.maxCommitRetryTimeout=-1 successfully
Set server.maxRollbackRetryTimeout=-1 successfully
Set server.rollbackRetryTimeoutUnlockEnable=false successfully
Set server.distributedLockExpireTime=10000 successfully
Set server.xaerNotaRetryTimeout=60000 successfully
Set server.session.branchAsyncQueueSize=5000 successfully
Set server.session.enableBranchAsyncRemove=false successfully
Set server.enableParallelRequestHandle=false successfully
Set metrics.enabled=false successfully
Set metrics.registryType=compact successfully
Set metrics.exporterList=prometheus successfully
Set metrics.exporterPrometheusPort=9898 successfully
=========================================================================
 Complete initialization parameters,  total-count:107 ,  failure-count:5
=========================================================================
 init nacos config fail.

3)仔细看了报错的地方,对比config.txt,发现报错的地方都没有赋值,试一试给了双引号“”,然后重新执行

=========================================================================
 Complete initialization parameters,  total-count:107 ,  failure-count:0
=========================================================================
 Init nacos config finished, please start seata-server.

结果没毛病,failure-count:0,去Nacos看看,配置列表已经有了。

 

 ——————————

107项Data Id成功发布。

如果通过Nacos控制台新增的话,用1个Data Id就可以搞定了,可惜通过api去发布配置,没有找到说明如何一次性配置到一起。

原文地址:http://www.cnblogs.com/bobo20080808/p/16928607.html

1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长! 2. 分享目的仅供大家学习和交流,请务用于商业用途! 3. 如果你也有好源码或者教程,可以到用户中心发布,分享有积分奖励和额外收入! 4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解! 5. 如有链接无法下载、失效或广告,请联系管理员处理! 6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需! 7. 如遇到加密压缩包,默认解压密码为"gltf",如遇到无法解压的请联系管理员! 8. 因为资源和程序源码均为可复制品,所以不支持任何理由的退款兑现,请斟酌后支付下载 声明:如果标题没有注明"已测试"或者"测试可用"等字样的资源源码均未经过站长测试.特别注意没有标注的源码不保证任何可用性