[Windows] Improve MySQL install (#4646)

This commit is contained in:
Nikolay Frolov
2021-12-03 19:49:55 +03:00
committed by GitHub
parent d12aeab69c
commit 050efaf52a
5 changed files with 16 additions and 12 deletions

View File

@@ -11,9 +11,16 @@ $ArgumentList = ("/install", "/quiet", "/norestart")
Install-Binary -Url $InstallerURI -Name $InstallerName -ArgumentList $ArgumentList Install-Binary -Url $InstallerURI -Name $InstallerName -ArgumentList $ArgumentList
## Downloading mysql ## Downloading mysql
$MysqlMajorVersion = (Get-ToolsetContent).mysql.major_version [version]$MysqlVersion = (Get-ToolsetContent).mysql.version
$MysqlFullVersion = (Get-ToolsetContent).mysql.full_version $MysqlVersionMajorMinor = $MysqlVersion.ToString(2)
$MysqlVersionUrl = "https://dev.mysql.com/get/Downloads/MySQL-${MysqlMajorVersion}/mysql-${MysqlFullVersion}-winx64.zip"
if ($MysqlVersion.Build -lt 0) {
$MysqlVersion = (Invoke-RestMethod -Uri "https://dev.mysql.com/downloads/mysql/${MysqlVersionMajorMinor}.html" |
Select-String -Pattern "${MysqlVersionMajorMinor}\.\d+").Matches.Value
}
$MysqlVersionFull = $MysqlVersion.ToString()
$MysqlVersionUrl = "https://dev.mysql.com/get/Downloads/MySQL-${MysqlVersionMajorMinor}/mysql-${MysqlVersionFull}-winx64.zip"
$MysqlArchPath = Start-DownloadWithRetry -Url $MysqlVersionUrl -Name "mysql.zip" $MysqlArchPath = Start-DownloadWithRetry -Url $MysqlVersionUrl -Name "mysql.zip"
@@ -23,7 +30,7 @@ Extract-7Zip -Path $MysqlArchPath -DestinationPath "C:\"
# Rename mysql-version to mysql folder # Rename mysql-version to mysql folder
$MysqlPath = "C:\mysql" $MysqlPath = "C:\mysql"
Invoke-SBWithRetry -Command { Invoke-SBWithRetry -Command {
Rename-Item -Path "C:\mysql-${MysqlFullVersion}-winx64" -NewName $MysqlPath -ErrorAction Stop Rename-Item -Path "C:\mysql-${MysqlVersionFull}-winx64" -NewName $MysqlPath -ErrorAction Stop
} }
# Adding mysql in system environment path # Adding mysql in system environment path

View File

@@ -65,7 +65,7 @@ Describe "PostgreSQL" {
Describe "MySQL" { Describe "MySQL" {
It "MySQL CLI" { It "MySQL CLI" {
$MysqlMajorVersion = (Get-ToolsetContent).mysql.major_version $MysqlVersion = (Get-ToolsetContent).mysql.version
mysql -V | Should -BeLike "*${MysqlMajorVersion}*" mysql -V | Should -BeLike "*${MysqlVersion}*"
} }
} }

View File

@@ -422,8 +422,7 @@
"default": "16" "default": "16"
}, },
"mysql": { "mysql": {
"major_version": "5.7", "version": "5.7"
"full_version": "5.7.36"
}, },
"mongodb": { "mongodb": {
"version": "5.0" "version": "5.0"

View File

@@ -454,8 +454,7 @@
"default": "16" "default": "16"
}, },
"mysql": { "mysql": {
"major_version": "5.7", "version": "5.7"
"full_version": "5.7.36"
}, },
"mongodb": { "mongodb": {
"version": "5.0" "version": "5.0"

View File

@@ -307,8 +307,7 @@
"default": "16" "default": "16"
}, },
"mysql": { "mysql": {
"major_version": "8.0", "version": "8.0.26"
"full_version": "8.0.26"
}, },
"mongodb": { "mongodb": {
"version": "5.0" "version": "5.0"