Wednesday, December 19, 2007

OTK Custom dbInstaller 2.0 User Feedback

If you have gone through our FAQ page and still unable to find your answer, please post your questions here. You can also submit your bug report, suggestions, and comments about Custom dbInstaller 2.0 here.

We value your feedback as much as we value our businesses!

17 comments:

wG said...

Hi,
I'm trying dbInstaller so I've downloaded the .MSI in your site but I get the following error message:

"Custom dbInstaller 2.0

The installer encountered an unexpected error installing this package. This may indicate a problem with this package.
The error code is 2738."

My OS: Windows Vista Ultimate (French).

I have get setup's MD5 checksum:

b68e16f36c4d72ca1beb65c811e966b0

Can you confirm me if its right ?
If it is, whats the problem?

Thank you.
Good job on Custom dbInstaller.

Best regards,
Christophe T. C.

Antonio Ooi said...

Hi wg,

Sorry for the late reply. After searching through Google, it seems like many other commercial products that use MSI installer are facing the same problem with Windows Vista (although my Vista Business does not have this problem). According to the iTunes support site:

http://docs.info.apple.com/article.html?artnum=304405

It looks like Windows Vista is blocking those installers that contains VBScript as part of the Custom Action. We will try to look into this problem and get to fix to this issue.

By the way, did you manage to get the problem solved? Anyway, thank you for your feedback.

Antonio

Antonio Ooi said...

hi wg,

Try this:

http://blogs.msdn.com/charlie/archive/2007/05/01/may-ctp-install-problems-on-vista-vb-script-error.aspx

Hope this helps.

Antonio

Bob said...

I have received this error when installing on a Vista machine.


Directory lookup for the file "C:\Users\Bob\Documents\dbI_Sample.mdf" failed with the operating system error 5(Access is denied.).
File 'dbI_Sample' cannot be restored to 'C:\Users\Bob\Documents\dbI_Sample.mdf'. Use WITH MOVE to identify a valid location for the file.
Directory lookup for the file "C:\Users\Bob\Documents\dbI_Sample_log.ldf" failed with the operating system error 5(Access is denied.).
File 'dbI_Sample_log' cannot be restored to 'C:\Users\Bob\Documents\dbI_Sample_log.ldf'. Use WITH MOVE to identify a valid location for the file.
Problems were identified while planning for the RESTORE statement. Previous messages provide details.
RESTORE DATABASE is terminating abnormally.

at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)
at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection)
at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj)
at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
at System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async)
at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result, String methodName, Boolean sendToPipe)
at System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
at Otk.CustomDbInstaller.DbInstaller.Restore(String backupFileLocation, String targetDbName, Boolean overwriteExistingDb, String mdfFileLocation, String ldfFileLocation)
at Otk.CustomDbInstaller.InstallerPresenter._bgInstaller_DoWork(Object sender, DoWorkEventArgs e)
at System.ComponentModel.BackgroundWorker.OnDoWork(DoWorkEventArgs e)
at System.ComponentModel.BackgroundWorker.WorkerThreadStart(Object argument)

I did not receive the error when installing on an XP machine so I assume the error was the result of Vista's security. I tried different folder locations but got the same error in all locations I tried. Any workaround or resolution for this?

Antonio Ooi said...

Hi Bob,

Have you tried the following:

1. Logon as Administrator.
2. Make sure the login credential that you use for dbI has enough permission to perform restoration.
3. Right-click your installer and select Run as Adminsitrator.

FYI, my development workstation is Windows Vista Business Edition. If the problem persists, please let us know again.

Thanks!

Antonio

JohnnyThomsen said...

Hi!
Deploying website to a webserver, and added dbi to restore database from .bak file, but on a different server! - a seperate sql-server. The DB .bak file is stored on the webserver in the same folder as the otkdbi.exe and config files. but when the restore is about to execute i get an error "Cannot open backup device '[Webserverpath\deployfolder\.bakfile]' Operating system error 21(error not found) remote server"

Any Hints ?

Antonio Ooi said...

Hi Johnny,

We regret to say that this is a known limitation of dbI 2.0 (and perhaps this is why the SQL Server Management Studio's restore feature does not allow us to select a shared network folder from other server or computer). If restoring a backup database to a remote server is vital to your business, we suggest that you do not consider dbI unless we're able to come out with a new version that capable of copying the backup file to the desired SQL Server database machine and restore from there.

However, alternatively, you can create a complete SQL script file that creates the database, together with the underlying database objects, such as tables, views, stored procedures etc, for dbI to run that script and create the database via remote server name or IP address that you specify at the Database Connection screen.

Again, thank you for your interest on our product and hope the alternate solution can fulfill your need.

Regards,
Antonio

JohnnyThomsen said...

Hi Antonio

FYI,:

Managed to do it with a script. Maybe a future feature for dbi ?

To restore a database from a file that is located on a different computer (for example, restoring from a mapped network drive), the Windows account used to start the SQL Server service has to be a non-system account with full control privileges to the backup file.

RESTORE DATABASE "[Database]" FROM DISK = '\\[Servername]\[ShareName]\[Database.bak]' WITH REPLACE

Regards
Johnny Thomsen

Antonio Ooi said...

Hi Johny,

Thank you for your feedback. We will definitely take note of that.

Regards,
Antonio

Mike said...
This comment has been removed by the author.
Mike said...

Hello,

I'm not able to get my .sql script to run during the install. The script is to create a database. It indicates it is running, but the database does not get created. The job indicates it completed without errors.

I can run the .sql file using the osql command with the same credentials. After I do this, the Db is there and my vs2005 windows forms ap runs fine. Proving the connection string in the app.exe.config file was updated correctly by dbInstall.

Any ideas?

What other information to you need?

Thanks,

Mike

Mike said...

Hello,

I'm still having issues with executing an .sql file during the installation process.

My .sql is a simple insert of 1 row into 1 table. It runs fine executing my .sql file with the osql command.

During the dbInstall process, it says it's processing the sql script, pauses for a few seconds, then says completed.

I feel during the pause, it might be timing out trying to make the connection to the sql server.

If I rename the .sql script to a file name other than what the dbInstall is configured to use, it does error with cannot find the file. So it seems to be attempting to run it.

After the install, my vs2005 windows ap runs, so the dbInstall is properly configuring the connection string in my app.exe.config file.

Please provide any thoughts as to what I may be doing wrong. Is there other information that I can provide you?

Thanks,

Mike

Antonio Ooi said...

Hi Mike,

Would you mind to send us your app.exe.config together with the your SQL script file and otkdbi.exe.config?

Thanks!

Antonio Ooi said...

Hi Mike,

You can email those files to:

otk.web@gmail.com

Thank you.

Mike said...
This comment has been removed by the author.
Mike said...

Hello,

Worked with your product for serveral days now. I do have 1 question other than my .sql script execution problem.

If I'm having dbInstall restore a base SQL DB with the initial install of an application, how does one deal with the .mdf placement? I know you have MdfFileLocation key. My issues is how do I know a valid path on the target PC? My application installs an named instance of express. In your sample you are using MSSQL.1. I don't know if my instance will be MSSQL.1, or .2, or .3, etc.

I was hoping it could work like Management Studio, being when you resotre a new DB, it puts the .mdf and .ldf into the data folder under that instance of Express. If I leave the keys "MdfFileLoctaion" empty, dbInstall tries to create the .mdf in the same path as the development PC had them. (As your documentation states.)

I do admit to being a newbe at VS.net, so there may be obvious ways to find or create a known path at install time that can be used in your key -MdfFileLocation-, but at this time, I don't know how.

Any thoughts or suggestions greatly appreciated.

Thanks,

Mike

Antonio Ooi said...

Hi Mike,

If you set the AllowEditDatabaseFileLocations to True, you will be allowed to specify your preferred mdf and ldf location to install. As the matter of fact, as far as the SQL Server is concerned, it does not really matter which named instance folder that your application database is installed. What does matter, however, the condition of the target location, such as free hard disk space and ease of recovery when the OS has no longer accessible and needs to be formatted etc. This is why dbI displays the free space for each drive on its Database Location dialog box for user's convenience.

We would like to thank you for choosing OTK Custom dbInstaller. However, we would also like to advise you and all our potential customers that you should thoroughly evaluate our product of its suitability and usability before deciding whether to purchase it not so that no disappointment being delivered out of your investment (although USD16.80 is not a big amount) -- this is also the reason why we provide full-feature demo version for your evaluation.

Thank you.

Warmest Regards,
Antonio