Difference between revisions of "User:Allan Smith/sandbox"

From Dragon Age Toolset Wiki
Jump to: navigation, search
(ready for prime time)
Line 5: Line 5:
 
Manual database installation works almost every time.  If it does not, it should at least should give you clues as to why it is failing, which you do not generally get when using the toolset installer.  If this "cannot connect to the database" error is frustrating you and you want to just make it work, and don't want to keep troubleshooting, this is probably your best bet:
 
Manual database installation works almost every time.  If it does not, it should at least should give you clues as to why it is failing, which you do not generally get when using the toolset installer.  If this "cannot connect to the database" error is frustrating you and you want to just make it work, and don't want to keep troubleshooting, this is probably your best bet:
  
# '''Install the toolset without any of the database options checked'''.
+
# '''Install the toolset without any of the database options checked'''.[[Image:Toolset setup screen.png|right]]
#:Uncheck the following options as shown here:[[Image:Toolset setup screen.png|right]]
+
#:Uncheck the following both of the database settings options as shown here. This will just install the toolset files and do nothing at all with the database itself.  Of course, since SQL Server is not installed, you would still get the "Unable to to connect to the database" error at this point.
#:*Install MS SQL Express 2005 SP3
+
#:*Restore the default database. Existing DA toolset databases will be overwritten
+
#:This will just install the toolset files and do nothing at all with the database itself.  Of course, since SQL Server is not installed, you will still get the "Unable to to connect to the database" error at this point.
+
 
# '''Manually install SQL Server and restore the database'''
 
# '''Manually install SQL Server and restore the database'''
:It is not as hard as it may sound, and is documented [[manual database installation|here]].  Basically, when you do this, you are taking control of the two steps that you told the installer not to do, and doing them on your own.  This is effective as this way you can babysit the installation process.  Running the SQL installer this way will throw more explicit errors at you when it is having problems, making it easier to diagnose the problems and find solutions.
+
#:It is not as hard as it may sound, and is documented [[manual database installation|here]].  Basically, when you do this, you are taking control of the two steps that you told the installer not to do, and doing them on your own.  This is effective as this way you can babysit the installation process.  Running the SQL installer this way will throw more explicit errors at you when it is having problems, making it easier to diagnose the problems and find solutions.
  
  

Revision as of 00:56, 12 December 2009

Note:If you were looking here for unable to connect issues, I have moved it all out of my sandbox into a real page located at Unable to connect to the database


Big Hammer Approach

Manual database installation works almost every time. If it does not, it should at least should give you clues as to why it is failing, which you do not generally get when using the toolset installer. If this "cannot connect to the database" error is frustrating you and you want to just make it work, and don't want to keep troubleshooting, this is probably your best bet:

  1. Install the toolset without any of the database options checked.
    Toolset setup screen.png
    Uncheck the following both of the database settings options as shown here. This will just install the toolset files and do nothing at all with the database itself. Of course, since SQL Server is not installed, you would still get the "Unable to to connect to the database" error at this point.
  2. Manually install SQL Server and restore the database
    It is not as hard as it may sound, and is documented here. Basically, when you do this, you are taking control of the two steps that you told the installer not to do, and doing them on your own. This is effective as this way you can babysit the installation process. Running the SQL installer this way will throw more explicit errors at you when it is having problems, making it easier to diagnose the problems and find solutions.


Why does this work?

The toolset needs a database engine to run. The installer has a copy of SQL Server 2005 embedded in it. The idea behind this is that we could hide all the SQL Server installation, setup and administration voodoo, and do it all in the background so that you wouldn't have to figure out how to do it on your own. When it works - it is great, when it doesn't - you land on this page...

When the toolset has finished doing its business (essentially unpacking some files and setting up some permissions and registry entries) it then runs the SQL Server 2005 installer in "silent" mode, where it just tries to install with its default settings. The toolset installer is "blind" to what goes on during the SQL install, it just gets a message when the SQL installer says "I'm done", regardless of what kind of "done" that is. It could be "I just failed horribly, but I'm done failing now" or it could be "Whew, everything went as planned, I'm done". Once the toolset installer gets that message, it says "SQL is done, so I can now restore the database". It then runs a command line to restore the database. Again this process does not give proper feedback either, it just spits back another "I'm done" message, at which the toolset installer comes back and tells you it is finished. Anything that goes wrong in this process will cause the dreaded error when you start the toolset. Unfortunately there is no easy way for the installer to catch these problems and alert you. Taking this process out of the installer's hands and running it manually allows you to see what is going wrong and react to it. A quick internet search for any error that you get will often help you figure out what SQL Server is choking on in your particular case.