dok:oramix

Migration von 32- auf 64-Bit

Die 32-Bit Unterstützung fällt nach und nach bei Komponenten weg auf denen BPS2 aufbaut, darunter so zentrale wie Windows 10 und PostgreSQL. Es wird zunehmend schwieriger eine 32-Bit Ausgabe von BPS zu pflegen, und es ist absehbar dass es in naher Zukunft unmöglich wird.

Ab BPS 2.24 werden deshalb 32-Bit Versionen nur noch auf Anfrage, gegen Verrechnung der Umtriebe sowie eine begrenzte Zeit lang zur Verfügung gestellt. Für Version 2.23 werden zwar bis Ende 2020 weiterhin 32-Bit Ausgaben von BPS erscheinen, möglicherweise lassen sich aber gewisse Anforderungen dort nicht mehr realisieren.

Sie sollten deshalb folgendes in ihre Planungen aufnehmen:

  • Wenn sie noch BPS PC's im Einsatz haben auf denen Windows 10 in der 64-Bit Ausgabe nicht installierbar ist, sollten sie diese sukzessive ersetzen.
  • Installieren sie auf allen mit neuen BPS Versionen zu verwendeten BPS PC's ein aktuelles Windows 10 in 64-Bit Ausgabe (Home, Pro oder Enterprise).
  • Falls sie während einer Übergangszeit weiterhin 32-Bit Versionen von BPS verwenden wollen, richten sie auf den BPS PC's die Oracle-Client Software für gemischten Betrieb von 32-/64-Bit ein. Anleitung siehe unten.

Es ist nicht schwierig, einen gemischten 32-/64-Bit-Oracle-Client aufzusetzen, mit dem Sie sowohl 32- als auch 64-Bit-BPS-Installationen nebeneinander auf demselben PC verwenden können.

  • Falls sie die Datei tnsnames.ora innerhalb der bisherigen lokalen Oracle Client Verzeichnisse gespeichert haben, sichern sie diese Datei zuerst.
    Falls tnsnames.ora bei ihnen zentral für alle irgendwo im LAN gespeichert ist müssen sie nichts machen.
  • Deinstallieren sie die bisherige Oracle Client Software. Löschen Sie auch zurückgebliebene Einträge in aus den Windows Umgebungsvariablen und der Windows Registrierung (Registry).
  • Downloaden sie den 32- und den 64-bit Oracle Instant Client
    • Sie benötigen entweder das Paket «basic» oder das Paket «basiclite». «Basic» hat lokalisierte Oracle-Fehlermeldungen und ist deshalb grösser, «basiclite» genügt aber völlig (Endanwender können mit ORA-Meldungen meist sowieso nichts anfangen).
    • Sie können die neuste Version des Oracle Instant Client nehmen, die funktioniert mit BPS und auch mit älteren Oracle Server Versionen zusammen. (Im Beispiel nehmen wir 19.6)
  • Erzeugen sie den Ordner C:\oracle
  • Kopieren sie die gesicherte Datei tnsnames.ora nach C:\oracle (falls diese nicht zentral auf einem Share liegt)
  • Entpacken sie die heruntergeladenen Instant Clients in das Verzeichnis C:\oracle
  • Renamen sie die Unterverzeichnisse in C:\oracle
    von instantclient-basiclite-nt-19.6.0.0.0dbru\ nach 32\
    von instantclient-basiclite-windows.x64-19.6.0.0.0dbru nach 64\
  • Kopieren sie das folgende Skript und fügen sie es in die neue Datei C:\oracle\makelinks.bat ein.
    Falls sie eine andere Version der Oracle Client Software verwenden, passen sie instantclient_19_6 im Skript an:
@echo off
setlocal
rem Check or get admin privileges
[gt]nul 2[gt][&]1 "%SystemRoot%\system32\cacls.exe" "%SystemRoot%\system32\config\system"
if '%errorlevel%' NEQ '0' (
    echo Requesting administrative privileges...
    goto UACPrompt
) else ( goto gotAdmin )
:UACPrompt
    echo Set UAC = CreateObject^("Shell.Application"^) [gt] "%temp%\getadmin.vbs"
    echo UAC.ShellExecute "%~s0", "", "", "runas", 1 [gt][gt] "%temp%\getadmin.vbs"
    "%temp%\getadmin.vbs"
    exit /b
:gotAdmin
    if exist "%temp%\getadmin.vbs" ( del "%temp%\getadmin.vbs" )
 
rem Create links
call :makelink oraclient C:\oracle\32\instantclient_19_6 C:\oracle\64\instantclient_19_6
pause
goto :eof
 
:makelink
if exist %SystemRoot%\SysWOW64\%1 rmdir /q %SystemRoot%\SysWOW64\%1
if exist %SystemRoot%\System32\%1 rmdir /q %SystemRoot%\System32\%1
mklink /d %SystemRoot%\SysWOW64\%1 %2
mklink /d %SystemRoot%\System32\%1 %3
  • Führen sie makelinks.bat aus um die erforderlichen Links zu erzeugen.
  • Fügen sie folgendes Verzeichnis in die Umgebungsvariable PATH ein: %SystemRoot%\System32\oraclient
  • Falls sie die Datei tnsnames.ora lokal in C:\oracle gespeichert haben fügen sie die folgende Umgebungsvariable hinzu: TNS_ADMIN=C:\oracle
    Falls tnsnames.ora bei ihnen zentral im LAN gespeichert ist, passen sie die Umgebungsvariable TNS_ADMIN entsprechend an.

Sie können ab jetzt 32- und 64-bit BPS Installationen parallel verwenden.

  • dok/oramix.txt
  • Zuletzt geändert: 22.03.2021 15:35
  • von ibk