Mac通过Docker部署SQL Server提示密码过短错误,如何修改密码?
Mac Docker部署SQL Server密码过短报错解决方案
前置说明
SQL Server的sa账号密码必须符合以下规则:长度不小于8位,同时包含大写字母、小写字母、数字、特殊符号四类字符中的三类,不符合规则的密码会导致容器启动失败。
方案1:删除故障容器重新创建(无数据保留需求时首选)
- 执行命令查看所有容器,找到状态为Exited的SQL Server故障容器,记录容器ID或容器名:
docker ps -a - 删除故障容器:
docker rm <替换为你的容器ID/容器名> - 重新执行启动命令,替换为符合规则的密码即可,示例命令如下:
docker run -e "ACCEPT_EULA=Y" -e "MSSQL_SA_PASSWORD=替换为你的合规密码" -p 1433:1433 --name mssql -d mcr.microsoft.com/mssql/server:latest
如果你使用的是SQL Server 2017及更早版本的镜像,将环境变量名
MSSQL_SA_PASSWORD替换为SA_PASSWORD即可。
- 验证启动结果,执行以下命令,如果看到对应容器状态为Up即启动成功:
docker ps
方案2:修改旧容器环境变量(需保留旧容器数据时使用)
- 停止故障容器(若容器未完全退出):
docker stop <替换为你的旧容器ID/容器名> - 直接修改容器的sa密码环境变量:
docker update --env MSSQL_SA_PASSWORD=替换为你的合规密码 <替换为你的旧容器ID/容器名> - 重新启动容器即可生效:
docker start <替换为你的旧容器ID/容器名>
内容的提问来源于stack exchange,提问作者Tony Correia
相关产品推荐
相关产品推荐

