Octopus works with any Microsoft SQL database, but I you don't have any preference we recommend you to start by using SQL Server 2005 Express Edition.
Please go to http://www.octopusnetwork.org/InstallationGuide.aspx for full information about installing SQL Server 2005 Express Edition.
Understanding Octopus database configuration
To communicate with your SQL database , Octopus needs :
- The location (Server) of your SQL database
- The name (Database) of your SQL database
- The username & password to access this SQL database.

If you installed MSDE, the server name will be the name of your computer.
Example: MYCOMPUTER
If you installed SQL Express, the server name will be the name of your computer followed by the name of your database instance (SQLEXPRESS by default).
Example: MYCOMPUTER\SQLEXPRESS
For the database name you should use OCTOPUS. Change it only if you are already using a database called OCTOPUS for another purpose.
The username & password depends on what you answered during SQL database installation.
Running the database on a shared server.
You can share your database with many computers by installing the database on a dedicated server.

The only difference with the "standalone computer" installation is that you must make sure that all your computers can communicated correctly with your database server:
- Make sure no firewall software avoids communication between computers and server
- Make sure you use the network name of the server.
- And make sure TCP/IP communication (normally enabled by default)
Enabling TCP/IP communications
Launch the SQL Server configuration manager (in your start menu under Microsoft SQL Server 2005 and Configuration tools).

It shows you how client software can communicate with your SQL database. To use Octopus in a shared database configuration you need to enable TCP/IP communications.

You can also check what TCP/IP ports your SQL server database is using.

In this example the database server is using dynamic port starting at 60946 and a fixed port 1433.
We recommend you to disable dynamic ports (put 0), and use a fixed TCP Port like 1433.
How to diagnose connections problems?
Ping
Try to PING the server to make sure you are using a correct server name

If you fail pinging your server it means that you are not using the correct server name, or a firewall is blocking ping.
Telnet
Try to TELNET the port of your SQL server. This is the TCP/IP port used by SQL Server for TCP/IP communications.
It is generally 1433, but it can be different depending on configuration.
If connection fails you get :

If your connection succeeds, you get a blank screen with no error message.
In case of connection failure:
- Check that you are using correct server name (test with PING)
- Check that TCP/IP is enabled on your SQL server (check your SQL Server settings)
- Check that you are using correct server TCP/IP port (check your SQL Server settings)
- Check that firewall software is not blocking the TCP/IP connection attempt.
