run_lobster_june2026_db_upgrade.ps1 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. # Lobster June 2026 DB upgrade (master + tenant migrations)
  2. # Usage:
  3. # cd d:\ylrz_saas_new\java\scripts
  4. # .\run_lobster_june2026_db_upgrade.ps1
  5. # .\run_lobster_june2026_db_upgrade.ps1 -TenantIds "32"
  6. # Optional env: DB_HOST, DB_PORT, DB_USER, DB_PASSWORD, DB_NAME
  7. param(
  8. [string]$TenantIds = ""
  9. )
  10. $ErrorActionPreference = "Stop"
  11. $scriptDir = Split-Path -Parent $MyInvocation.MyCommand.Path
  12. $javaRoot = Split-Path -Parent $scriptDir
  13. $mysqlJar = "$env:USERPROFILE\.m2\repository\com\mysql\mysql-connector-j\8.0.33\mysql-connector-j-8.0.33.jar"
  14. if (-not (Test-Path $mysqlJar)) {
  15. Write-Host "MySQL JDBC jar not found. Run: mvn -q dependency:get -Dartifact=mysql:mysql-connector-java:8.0.33" -ForegroundColor Red
  16. exit 1
  17. }
  18. if ($TenantIds) { $env:TENANT_IDS = $TenantIds }
  19. Push-Location $scriptDir
  20. try {
  21. javac -encoding UTF-8 LobsterDbUpgradeRunner.java LobsterDbFixRunner.java
  22. if ($LASTEXITCODE -ne 0) { exit $LASTEXITCODE }
  23. java -cp "$mysqlJar;." LobsterDbUpgradeRunner
  24. if ($LASTEXITCODE -ne 0) { exit $LASTEXITCODE }
  25. Write-Host "`n--- Post-fix (menu IDs / image_recognition scene) ---" -ForegroundColor Cyan
  26. java -cp "$mysqlJar;." LobsterDbFixRunner
  27. if ($LASTEXITCODE -ne 0) { exit $LASTEXITCODE }
  28. Write-Host "`n--- Encoding fix (garbled Chinese text / remarks) ---" -ForegroundColor Cyan
  29. javac -encoding UTF-8 DbRemarkEncodingFixAll.java LobsterDbEncodingFix.java
  30. if ($LASTEXITCODE -ne 0) { exit $LASTEXITCODE }
  31. java -cp "$mysqlJar;." DbRemarkEncodingFixAll
  32. exit $LASTEXITCODE
  33. } finally {
  34. Pop-Location
  35. }