jk's notes
  • MacM芯片下SQLServer与EFCore的说明

MacM芯片下SQLServer与EFCore的说明

Mac 下芯片有 intel 和 arm 两个版本, m 系列的芯片属于 arm 架构. 在 Mac 上的 Docker 中就无法使用 SQLServer, 同时 EFCore 一般默认也是使用 Intel 处理器架构的命令, 所以诸如 dotnet ef 的命令在 M 芯片下无法使用.

要解决这个问题, 数据库可以使用 Azure SQL Edge 的版本. 而在 安装 dotnet-ef 工具的时候带上 -a 参数, 设置为 arm64 即可.

数据库 Azure SQL Edge 的文档链接: https://learn.microsoft.com/zh-cn/azure/azure-sql-edge/

安装镜像可以直接使用:

docker run \
  -e ACCEPT_EULA=Y \
  -e MSSQL_PID="Developer" \
  -e MSSQL_SA_PASSWORD="Sa12345678" \
  -p 1433:1433 \
  -d --name mysqlserver \
  mcr.microsoft.com/azure-sql-edge:latest

部署文档: https://learn.microsoft.com/zh-cn/azure/azure-sql-edge/disconnected-deployment

而 dotnet tool install 的帮助可以从命令行中来获得:

dotnet tool install --help

image-20240203221339528

Last Updated:
Contributors: jk