首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在上安装MySQL

在上安装MySQL
EN

Stack Overflow用户
提问于 2021-10-25 22:23:56
回答 1查看 237关注 0票数 0

有谁成功地将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:

代码语言:javascript
复制
# 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。所有的二进制文件至少返回错误或做一些事情。

这太奇怪了。任何帮助都将不胜感激。

EN

回答 1

Stack Overflow用户

发布于 2021-10-25 23:09:22

下载这个可执行文件并将其放入我的容器中的似乎做到了这一点:

https://download.microsoft.com/download/2/E/6/2E61CFA4-993B-4DD4-91DA-3737CD5CD6E3/vcredist_x64.exe

把这个放在我的容器上,并启动它,

代码语言:javascript
复制
C:\vcredist.exe /Q

执行此操作后,可执行文件开始工作:

代码语言:javascript
复制
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 root
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69715415

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档