Topics
Prev Next

Add Database Manager

The Add Database Manager screen displays when you click on the Add button on the 'Sparx Systems Cloud Services Configuration Client' dialog; it helps you to define a new database connection to either a local Firebird repository or a DBMS repository (via ODBC or OLE/DB).

This note is shown on the Add Database Manager screen:

"Note: The Data Source Names and network paths provided by the Data Link Properties and ODBC Data Sources dialogs are relative to this machine and may need to be modified to match those on the server."

This means if the Cloud Services Client application is running from a remote machine (that is, not the machine running the Cloud Server) the screens that are shown by clicking on the button and ODBC Data Sources button are relative to the current machine and not the Cloud Server machine, so care should be taken.

By default and as a safety precaution, whenever a new Database is defined it is automatically configured to be disabled. You can enable the database during definition by selecting the 'Enabled' checkbox on the Configure Database Manager screen.

Adding New Databases

It is important to note that the Cloud Server uniquely identifies Databases by a single identifying value; this value is referred to as the database 'Alias'. For:

  • Firebird definitions the 'Alias' is the filename minus the extension
  • ODBC based definitions the 'Alias' is the 'Data Source'
  • Oracle OLE DB based definitions the 'Alias' is the 'net service name'
  • SQLServer OLE DB based definitions the 'Alias' is the 'Initial Catalog'

Therefore, take care when defining database connections, to ensure that you do not create duplicate database aliases. However, if two or more database definitions do share the same alias then all Enterprise Architect clients will connect to the first database found with the requested alias.

Item

Description

Firebird Database

Sparx Systems, in the 'Introduction to Sparx Systems Cloud Services' webinar, demonstrate the Cloud Services with a Firebird database as it is so easy to set up and use, and it works extremely well with Sparx Systems Cloud service technology. Firebird is a free, open source rational database that runs on a variety of platforms. Firebird is very sophisticated and offers great concurrency, scalability and performance. It can be used in an enterprise setting and has been used in production systems, under a variety of names, since 1981.

To discover more about the Firebird database, please visit this website:

     http://www.firebirdsql.org/en/about-firebird/

You can view the webinar by clicking on this link:

     http://www.sparxsystems.com/resources/webinar/model-repository/cloud/introduction/introduction-cloud-services.html

You can define a connection to a Firebird database by entering its filename (and extension) only; for example,'MyFireBird.fdb'.

The Cloud Server assumes all Firebird databases physically reside under the directory %SERVICE_PATH%\Models\. The Cloud Server is, by default, installed to the folder of:

     ...\Program Files (x86)\Sparx Systems\Cloud Services\

In this case all Firebird models will be located at:

     ...\Program Files (x86)\Sparx Systems\Cloud Services\Models\

ODBC Database

You can define a connection to a database under a DBMS such as MySQL or PostgreSQL, by specifying the connection string to the database. If you are running the Management Client on the same machine as the server you can:

  1. Click on the button to open the 'Data Link Properties' dialog to build the connection string.
  2. Select the provider 'Microsoft OLE DB Provider for ODBC Drivers' and click on the Next >> button.
  3. Select the pre-defined System DSN from the 'Use data source name' field.
  4. Fill in the user name and password and select the 'Allow saving password' checkbox.

Notes:

  • Define all ODBC DSNs as SYSTEM DSNs, because the Cloud Server runs as a Windows Service and User DSNs might not be available to the Cloud Server
  • The step for filling in the user name and password might not be required if the user name and password have been saved with the ODBC DSN
  • The ODBC Data Sources button displays the Windows 'ODBC Data Source Administrator' dialog, which you can use to set up a new ODBC system data source to be listed on the 'Data Link Properties' dialog (if you are running the administration client on the same machine as the server); it is particularly helpful because it shows the 32-bit ODBC data source list that matches Enterprise Architect and the Cloud Services

Oracle Database (via OLE DB)

You can define a connection to an Oracle Database (via OLE/DB) by specifying the connection string to the database. If you are running the Management Client on the same machine as the server you can:

  1. Click on the button to open the 'Data Link Properties' dialog to build the connection string.
  2. Select the provider 'Oracle Provider for OLE DB' and click on the Next >> button.
  3. Type in the name of the 'Data Source'; this is the Oracle net service name as defined in the TNSNAMES.ORA.
  4. Fill in the user name and password and select the 'Allow saving password' checkbox.

Note:

  • The Cloud Server identifies databases by the 'Data Source' value and Oracle OLE DB defines the 'Data Source' as the net service name, so it is only possible to access one Oracle repository per net service name; the workaround to this limitation is to define multiple net service names in TNSNAMES.ORA that differ only by name

SQLServer Database (via OLE DB using SQL Server authentication)

Microsoft SQL Server supports two different forms of database authentication:

  • Windows NT authentication, and
  • SQL Server authentication

The Cloud Service will work with either, but SQL Server authentication is easier to configure.

Prior to defining the Cloud Service connection, define a SQL Server user with db_datareader and db_datawriter roles to the database that will act as the Enterprise Architect repository.

You can define a connection to a SQLServer Database by specifying the connection string to the database. If you are running the Management Client on the same machine as the server you can:

  1. Click on the button to open the 'Data Link Properties' dialog to build the connection string.
  2. Select 'Microsoft OLE DB Provider for SQL Server' and click on the Next >> button.
  3. Select or type in the instance of SQL Server.
  4. Select the 'Use a specific user name and password' checkbox and fill in the user name and password, then select the 'Allow saving password' checkbox.
  5. Select the database that is the Enterprise Architect repository in 'Select the database on the server'.

SQLServer Database (via OLE DB using Windows authentication)

Microsoft SQL Server supports two different forms of database authentication:

  • Windows NT authentication and
  • SQL Server authentication

The Cloud Service will work with either, but Windows authentication requires some special consideration. The Cloud Server runs as a Windows Service, and by default all Windows Services run as 'Local System Account'; therefore, if Windows authentication is to be used, the Sparx Systems Cloud Service should be configured to run under a predefined network user (configured with the Windows Services console) and this network user must have access rights to the database (configured with Microsoft SQL Server Management Studio or similar).

You can define a connection to a SQLServer Database by specifying the connection string to the database. If you are running the Management Client on the same machine as the server you can:

  1. Click on the button to open the 'Data Link Properties' dialog to build the connection string.
  2. Select the provider 'Microsoft OLE DB Provider for SQL Server' and click on the Next >> button.
  3. Select or type in the instance of SQL Server.
  4. Select the 'Use Windows NT Integrated security' checkbox.
  5. Select the database that is the Enterprise Architect repository in 'Select the database on the server'.

Note:

  • Because the Cloud Service is run under a single account, all database access will be under that account, so it will not be possible to keep track of what records are updated in the database by individual users