Recently, I had to use BBED in a windows 2008 R2 environment (to modify a checkpoint SCN in datafiles headers). To do this, I like to use BBED but this time, it was on a Windows 2008 R2 server on a 11.2 database.
2 problems :
– BBED is not shipped with Oracle since version 9.
– There’s no makefile on windows to compile bbed.
In a previous post, I wrote a little hack to compile bbed on Unix systems and to use it with oracle 9, 10, 11 and every database that have its datafiles located on a mount point (not for ASM).
On windows, to bypass this, you can copy your datafiles on a linux box, repair them with bbed, and copy them back to their original location. But when you work remotely or/and your database size is hundreds of Gigabytes … the problem is different.
So, if you want to use bbed on windows, you need to have many things:
- You need a bbed.exe. The only way is to get it from an Oracle 9i installation.
- You need to have a bunch of DLL (see above). All thoses DLLs are available in an Oracle 9i installation (in bin directory).
- oraclient9.dll
- oracommon9.dll
- orageneric9.dll
- ORACORE9.DLL
- oraldapclnt9.dll
- oran9.dll
- ORANCDS9.DLL
- orancrypt9.dll
- oranhost9.dll
- oranl9.dll
- oranldap9.dll
- ORANLS9.DLL
- oranms.dll
- oranmsp.dll
- orannzsbb9.dll
- oranoname9.dll
- oranro9.dll
- orantns9.dll
- ORAPLS9.DLL
- ORASLAX9.DLL
- ORASNLS9.DLL
- ORASQL9.DLL
- oratrace9.dll
- ORAUNLS9.DLL
- oravsn9.dll
- orawtc9.dll
- ORAXML9.DLL
- ORAXSD9.DLL
- You need message files for BBED. Thoses files are “bbedus.msb” and “bbedus.msg”. They are located in the mesg directory of an Oracle 9i installation. And you need to copy them in the rdbms\mesg directory of your ORACLE_HOME.
If you have all these files (if not, let me know 😉 ), put them in a directory for your bbed installation (let’s say c:\bbed), and set your ORACLE_HOME to the location where have put the message files, and finally launch BBED :
C:\bbed>dir /w
Volume in drive C has no label.
Volume Serial Number is 941A-E20F
Directory of C:\bbed
[.] [..] bbed.exe log.bbd [mesg] oraclient9.dll oracommon9.dll ORACORE9.DLL
orageneric9.dll oraldapclnt9.dll oran9.dll ORANCDS9.DLL orancrypt9.dll oranhost9.dll oranl9.dll oranldap9.dll
ORANLS9.DLL oranms.dll oranmsp.dll orannzsbb9.dll oranoname9.dll oranro9.dll orantns9.dll ORAPLS9.DLL
ORASLAX9.DLL ORASNLS9.DLL ORASQL9.DLL oratrace9.dll ORAUNLS9.DLL oravsn9.dll orawtc9.dll ORAXML9.DLL
ORAXSD9.DLL [rdbms]
30 File(s) 12 870 233 bytes
4 Dir(s) 26 325 200 896 bytes free
C:\bbed>echo %ORACLE_HOME%
c:\oracle\product\10.2.0\db_1
C:\bbed>dir /w %ORACLE_HOME%\rdbms\mesg
Volume in drive C has no label.
Volume Serial Number is 941A-E20F
Directory of c:\oracle\product\10.2.0\db_1\rdbms\mesg
[.] [..] bbedus.msb bbedus.msg kfodus.msb nmaf.msb nmaus.msb nmef.msb nmeus.msb
7 File(s) 72 222 bytes
2 Dir(s) 26 404 503 552 bytes free
C:\bbed>systeminfo | findstr /B /C:"OS Name" /C:"OS Version" /C:"System Type"
OS Name: Microsoft Windows Server 2008 R2 Enterprise
OS Version: 6.1.7601 Service Pack 1 Build 7601
System Type: x64-based PC
C:\bbed>.\bbed
Password:
BBED: Release 2.0.0.0.0 - Limited Production on Mon Jun 17 14:46:38 2013
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
************* !!! For Oracle Internal Use only !!! ***************
Now, you have a bbed exe on Windows 2008 R2 server.