Azure Pipeline连接Docker容器内SQL Server遇预登录握手错误求助
解决方案
在你使用的sqlcmd命令中添加-C参数,即可实现等同于TrustServerCertificate=True的效果,该参数会让sqlcmd信任服务器的自签名证书,解决预登录握手错误。
修改后的Docker命令如下:
RUN /opt/mssql/bin/sqlservr --accept-eula & sleep 20 \ && /opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P '********' -C -i /opt/mssql-scripts/*.sql \ && pkill sqlservr
补充说明
-C是sqlcmd的内置参数,专门适配自签名证书场景,和连接字符串里的TrustServerCertificate=True作用完全一致,刚好匹配你在Docker构建过程中用sqlcmd执行脚本的需求。
内容的提问来源于stack exchange,提问作者Oskar
相关产品推荐
相关产品推荐

