複数のユーザー DSN 接続 (ODBC) を古いサーバーから新しいサーバーに移行する方法を探しています。
レジストリでは自分のユーザーの保存されたユーザー DSN 接続しか表示されません。すべてのユーザー (合計 15 人) のユーザー DSN 接続をエクスポートして、新しいサーバーでユーザーが DSN 接続を手動で設定しなくても済むようにする方法はありますか?
ありがとう!
よろしくお願いします
答え1
ドライバーがインストールされている場合は、次の PowerShell スクリプトを使用できます。
$OldDsn = Invoke-Command -ComputerName OldServer { get-odbcdsn } | % {
$splat = @{}
if ($_.PropertyValue) { $splat['SetPropertyValue'] = $_.PropertyValue }
Add-OdbcDsn -Name $_.Name -DsnType $_.DsnType -Platform $_.Platform `
-DriverName $_.DriverName @splat
}
昇格されたPowerShell / ISEで新しいサーバー上でこれを実行し、ComputerNameパラメータをInvoke-Command
古いサーバーのホスト名に変更します。
答え2
HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\
HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\
ファイル c:\windows\odbc.ini にも一部の情報が重複しています。
C:\Windows\ODBCINST.INI にはドライバー情報のみが含まれています。
これは実際にドライバーをインストールすることの代替ではありません。
ODBCINST.INIに対応するレジストリキーは、
HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\
HKEY_CURRENT_USER\Software\ODBC\ODBCINST.INI\