I HAVE ORACLE 10.2 XE INSTALLED AND WORKING ON WINDOWS XP SP3 (32BIT). I NEED TO TRANSFER FULL DATABASE TO ANOTHER MACHINE (SERVER 2008R2 -64 BIT). I TRIED EXP AND IMP BUT RESULTS WERE PARTIAL NOT FULL. DATA FOR SOME TABLES WAS IMPORTED BUT NOT FULL.
first of all, Oracle XE is officially not supportet on 64-bit Windows, maybe this causes some errors.
Use datapump instead. Example for a full datapump export:
expdp sys/<password>#<yourDB> as sysdba full=Y directory=DATA_PUMP_DIR dumpfile=<filename>.dmp logfile=<logfile>.log
Related
I wanted to use the Desktop version of IB XE7 in my development environment but can't get the connection to work.
The original app had used a full server version of IB and I now wanted to run the app on a lower cost single PC type application and selected the IB Desktop version.
The Rad Studio 10.1 Berlin is running on a W7 64bit Virtual machine.
FireDac is the database connection component.
IB XE7 Desktop is the database server on the development PC.
Target for the application is a VM with W7 32bit, with another IB XE7 Desktop on that VM.
I can build the 32 bit app and it will connect to the IB XE7 Desktop on the target PC (running W7 32bit in a VM) after changing the FireDac connection component protocol field to 'local' instead of TCP/IP, something I read in Stack Overflow.
What I can't get to work is the database connection in the development environment.
I first installed the 64 bit version of IB, then removed it and tried the 32 bit version with the same result.
After reading up on some connection problems online, I tried putting 'gds_db' and 'localhost/gds_db' in the server name field, but it still didn't work, although it did change the error.
Error - with nothing in the server name
[FireDAC][Phys][IB]unavailable database.
Error after putting 'gds_db' in the server name
[FireDAC][Phys][IB]Unable to complete network request to host "gds_db".
Failed to locate host machine.
The specified name was not found in the hosts file or Domain Name Services..
First tried 64 bit IB installed, then removed all gsd files found and then the Registry entries, and installed the 32bit version. Problem still persisted.
Note: Database Workbench 5 connects OK to the database on the same VM.
Any ideas welcome.
Thanks.
James F.
I remember it being quite a performance to get Delphi XE8 + Seattle working with IB XE7,
in particular I kept getting the "unavailable database" error when trying to connect from
inside the IDE. Note: the following are things I found necessary to get Delphi working with a local instance of the full IB XE7 package. Requirements for the Developer and Desktop editions very probably differ, hopefully in ways explained in their documentation.
Some of the things to check are:
Check in the Windows Services app that the server is running.
My server shows up as
Interbase XE7 Server gds_db
As you can see, the Services app should tell you the name of the server.
If you want to connect to it via TPC/IP check that you have an entry
in your \windows\system32\drivers\etc\service file like this
gds_db 3050/tcp # InterBase Server
Hash-sign developer_ibxe7 3054/tcp # InterBase Server
The line containing developer_ibxe7 should start with a #, but SO won't display that for some reason. Anyway, that line is commented out because it refers to a developer edition I installed at some point.
Check that your OS environment contains an entry like this one
INTERBASE=d:\ibxe7
If it isn't, add it and reboot the machine.
In my case, d:\ibxe7 is the top-level folder in which I have IB XE7 installed.
With those things set up/checked start a new Delphi project in the IDE, add an IBConnection to it, and set its DatabaseName to a local IB database. For me, specifying
LocalHost:D:\Delphi\Interbase\Databases\MA.GDB
works fine. Then, see if you can set the Connected property to True. If you can't,
leave a comment and I'll see what else I can remember.
Are there any problems with programs that are compiled with Delphi 2010, using Rave reports (no database connection) running on Windows 10?
In principle, there's no reason why a program compiled with Delphi 2010 will not work perfectly well on Windows 10. Indeed, a program compiled with any 32 bit version of Delphi (Delphi 2 or later) can, in principle, be executed on Windows 10.
The usual caveats apply though. You have to make sure that your code respects features like UAC. So don't attempt to write to HKLM, system directories, etc. as standard user.
As a broad guideline, if your program executes on Windows 8.1, you can expect it to execute on Windows 10 also.
So, in summary, you should be perfectly capable of producing a program that runs on Windows 10 using Delphi 2010. However, it's impossible for anyone to tell you definitively that your program will run because only you know the full details of how your program is implemented. You should test your program on each new operating system as it is released, if not before it is released.
I'm not sure, but the internal Kernel ID from Windows is set from 6.x (Windows Vista - Windows 8.1) to 10.0 (Windows 10) so this can be a problem.
Situation:
I developed a DelphiXE5 ISAPI Webbroker application on a VMWare workstation under WIndows 7 Pro 64Bit. Testing on that platform with the code compiled as 32bit (default for DelphiXE5) was successful. The program consacts Stamps.com via HTTPS and uses the Stamps.com SOAP web application to purchase postage and create a mailing label with a valid postage stamp (indicium).
The mailing label is created as a PDF on a Stamps server and they send me back a URL which I then use to fetch the PDF and save it in my local SQL Server database. This fetch is done using INDY 10.6.0.5040 (per Remy at Indy). As part of that fetch, the INDY ssl component has to load and use the OpenSSL libraries. These load OK in the test environment.
I then moved the program (compiled as 32bit) to the Windows 64bit 2003 R2 server. This server is a virtual server running under VMWare. I am sure that the actual hardware is truly 64 bit. The OpenSSL libraries will not load on that server. I have tried the most current 32 bit libraries and the most current 64 bit libraries. Same result ... not loading. I tried the ones that load successfully in test .. they failed. Using the Indy WhichFailedToLoad() function shows "failed to load libeay32.dll". Funny thing is , I get the same message with the 64bit libraries. The libraries, even though 32 vs 64 bit, have the same name, so i get the same message. Now, my specific questions are ....
could there be a default area that the libraries load from and my placing them in the same directory as my program dll is not changing anything at all ?? Indy is going the default first and if they exist, that's the ones it is using. If so, does anyone know where that might be. I have tried to trace through the INDY code to see what was hapening but it jumps into assembler and I'm not a ms assembler programmer. I know IBM mainframe assembler in my sleep but MS seems uside down and backwards to me :-)
For Delphi experts out there.... SHould the program really be compiled as a 64 bit application and put in production and then use the 64bit libraries? In the test environment I'm running on 64bit hardware, 64bit host, 64bit guest on which the 32bit compile takes place. The 32 bit libraries work there and it seems that it should work in production on W2003 Server as that is identitical .. except for the OS version.
Could it be permissions problem with IIS 8.5 that wont let my dll read or load the OpenSSL libraries ? If so, any hints as to what ?
I have the DLL in the scripts directory along with libraries.
Who ever figures this out can get a job as my backup :-) ... really !
If your program is 32bit, the dll it uses have to be compiled in 32bit.
As for the location of the OpenSSL dlls, in my case, on a Win2012 R2 server, I put them in C:\Windows\SysWow64\inetsrv.
Delphi 7. Firebird 2.1.
I am using TSQLDataSet, TSQLDataSetProvider and TClientDataSet. This architecture has worked for me for a long, long time.
Today it started to give me this error: DBExpress Unknown error code 65535, not really clarifying.
I am able to set a SQL in the TSQLDataSet and add all fields in the Fields Editor.
The error occurs when I try to add all fields in the ClientDataSet, in design time. There is no code of mine involved.
I know it os way too litle information but really I don´t even know where to start digging.
Notes
I recently installed Delphi XE2 to start migrating
Probably you have Firebird / Interbase clients DLL hell. For Firebird you should use fbclient.dll, for Interbase - gds32.dll. If you does not follow to this rule, then DBMS API may return a misterious error. And dbExpress driver may have no good idea, what to do with this error. Then it returns another misterious error - 65535.
Probably (again, because no information) you had fbclient.dll renamed to gds32.dll to make Interbase Borland dbEpress driver happy. Then Delphi XE2 installed a real gds32.dll or it was installed as part of Interbase installation (do you ?). The current real Interbase gds32.dll is not compatible with your Firebird server.
You have to verify what DLL loads dbExpress driver, using SysMon or IDE Event Log. Then check what is this DLL. Then probably you will need to restore your gds32.dll.
The background to this query was this question.
I have installed this driver for Firebird and placed it within the path (system32) used by the IDE. The XE Data Explorer recognises the driver, and it is possible to create a connection using the Data Explorer. Trying to view tables or any other database element through this connection results in the error described in this question. As far as I can see #Alejandro Jourdan has not obtained a solution to this problem, and I can find no solution on any of the support sites for Firebird or for Delphi XE.
The second problem comes when I create a TSQLConnection using this connection. The connection works to the extent that it generates the login prompt to the database, but when it tries to open the connection I get the error message: 'file is not a valid database' This error message is (sort of) reproducible from within the Data Explorer which gives the following error:
I/O error during "CreateFile(open)" operation for file [database path] Error while trying to open file. Access is denied..
The database is valid and can be opened from the Firebird command line utility, and from a Data Base browser.
Environment:
Machine: Lenovo Thinkpad W510
OS: Windows 7 Ultimate 64bit
Delphi: Embarcadero® RAD Studio XE Professional Version 15.0.3953.35171
Database: W1-V2.5.0.26074 Firebird 2.5 (64 bit)
Also Installed:
Embarcado Borland® Developer Studio 2006 Enterprise Version 10.0.2288.42451 Update 2 (XP Version)
Borland Delphi Version 7 (XP Version)
EDIT:
See my own answer below. This edit has removed extensive detail that proves to be unnecessary in the light of that answer, while retaining the core of the question, and the links contained within it.
The first thing that sticks out to me is that you're using the 64-bit version of Firebird, and that you mentioned it comes with both a 32- and 64-bit driver. Are the DLLs named the same? If so, I suspect that the IDE/OS are trying to load the 64-bit version of the DLL in a 32-bit application, which isn't possible (32-bit apps can't load 64-bit drivers, and vice versa).
Try one of two things:
First, if the DLLs have the same name, rename the 64-bit version temporarily, and restart the IDE. Then try again.
Try installing the 32-bit version of Firebird, even though you're running a 64-bit OS.
The basic question I had (in part I) was:
I want to install a Firebird database
driver, and to have it available
within the Delphi XE IDE. I want the
database driver to be usable on the
same basis as other, supplied database
drivers (eg Interbase, SQL - from
within the Data Explorer in the IDE).
I have obtained an appropriate driver.
After considerable investigation I have found that it is not possible to achieve the integration into the Delphi IDE that I was trying to achieve. This is because the Data Explorer is a .NET application and the available DBExpress drivers (here and here) are just not compatible with .NET. I understand that I can use the drivers by setting up the parameters appropriately, in both the IDE and by programming in the application I am developing.
I have drafted this answer to assist others to avoid this particular blind alley. I am also editing the part II question in order to remove a lot of the detail, that proves to be unnecessary in the light of this answer.