有谁成功地将MySQL添加到Windows映像中?我尝试了两种将MySQL部署到映像中的不同方法。
我尝试在非交互模式下使用来自MySQL的msi。在容器中根本不工作。
While Installing Mysql.msi through powershell getting below error
我尝试提取zip,使用mysqld命令手动设置,根本不做任何事情。从字面上看,没有什么,可执行表的行为就好像它们只是运行和退出(没有输出,没有):
https://github.com/Somesh-K/Automation-Mysql/blob/main/1.mysql_setup_v2.ps1
这一切都有些奇怪。
是的,我知道发布了一个非常好的MySQL docker容器。这个很管用。问题是,运行需要交互的Windows容器和Linux容器会给用户带来不必要的挫折感。
对于我们的应用程序使用不同的后端(如SQL server)是不可行的,使用.NET核心而不是.NET框架是不可行的。为了简化,我只想在基于windows的webserver映像上安装MySQL。使用上面的链接中描述的两种方法似乎是可行的,但正如前面提到的,它不起作用,并且在容器中运行MySQL二进制文件时会出现非常奇怪的行为。
下面是奇怪行为的一个例子:
安装桌面
从MySQL下载Win32安装zip并放置在C:\mydata中
https://dev.mysql.com/downloads/mysql/
从Docker中提取ASPNET映像,运行它,并打开Powershell:
# docker pull mcr.microsoft.com/dotnet/framework/aspnet:4.8
# docker run --name testweb -v C:\mydata:C:\mydata:R -d mcr.microsoft.com/dotnet/framework/aspnet:4.8
# docker exec -it testweb powershell
C:\ > cd C:\mydata
C:\mydata\ > Expand-archive -path .\mysql-5.7.36-winx64.zip .
C:\mydata\ > cd \mysql-5.7.36-winx64\bin
C:\mydata\mysql-5.7.36-winx64\bin\ > .\mysql.exe -version
[zero output, acts like it's an empty executable]结果
容器上解压缩的mysql目录中的可执行文件/二进制文件根本不做任何事情。他们的行为就像有人写的和可执行的,只是退出。我以为我的安装压缩很糟糕,所以我在我的Windows 10工作站上提取了相同的zip。所有的二进制文件至少返回错误或做一些事情。
这太奇怪了。任何帮助都将不胜感激。
发布于 2021-10-25 23:09:22
下载这个可执行文件并将其放入我的容器中的似乎做到了这一点:
https://download.microsoft.com/download/2/E/6/2E61CFA4-993B-4DD4-91DA-3737CD5CD6E3/vcredist_x64.exe
把这个放在我的容器上,并启动它,
C:\vcredist.exe /Q执行此操作后,可执行文件开始工作::
C:\ > cmd.exe /C "C:\mysql\bin\mysqld" --initialize-insecure
C:\ > cmd.exe /C "C:\mysql\bin\mysqld" --install
C:\ > start-service mysql
C:\ > cmd.exe /C "C:\mysql\bin\mysql" -u roothttps://stackoverflow.com/questions/69715415
复制相似问题