使用Docker快速搭建MSSQL实验环境
1. 运行及配置
拉取镜像
docker pull mcr.microsoft.com/mssql/server:2019-latest
运行容器
docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=93i7f5^#Wpe98G6$" \
-p 1433:1433 --name sql1 -h sql1 \
-d mcr.microsoft.com/mssql/server:2019-latest
备注
密码应符合
SQL Server
默认密码策略,否则容器无法设置SQL Server
,将停止工作。 默认情况下,密码的长度必须至少为 8 个字符,并且必须包含以下四种字符中的三种:大写字母、小写字母、十进制数字和符号。 你可以通过执行 docker logs 命令检查错误日志。默认情况下,这会创建一个使用
SQL Server 2019
开发人员版的容器。
查看容器运行状态
docker ps | grep sql1
进入容器
docker exec -it sql1 bash
测试连接
/opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P "<YourNewStrong@Passw0rd>"
2. 更改 SA 密码
创建 SQL Server
容器后,通过在容器中运行 echo $SA_PASSWORD
,可发现指定的 SA_PASSWORD
环境变量。 出于安全考虑,需要更改 SA
密码。进入容器运行 sqlcmd
,然后根据提示输入旧密码和新密码
docker exec -it sql1 bash
/opt/mssql-tools/bin/sqlcmd \
-S localhost -U SA \
-P "$(read -sp "Enter current SA password: "; echo "${REPLY}")" \
-Q "ALTER LOGIN SA WITH PASSWORD=\"$(read -sp "Enter new SA password: "; echo "${REPLY}")\""
测试新密码是否正确测
docker exec -it sql1 bash
/opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P "<YourNewStrong@Passw0rd>"
3. 使用Sqlcmd
连接到数据库
- 下载 Microsoft ODBC Driver 17 for SQL Server 依赖并安装
- 下载 sqlcmd并安装
测试连接数据
sqlcmd -S <ip_address>,1433 -U SA -P "<YourNewStrong@Passw0rd>"