Database
This section identifies hardware and software requirements for Usercube's database.
Hardware
The database disk storage requirements depend on multiple factors as the database lifespan and the number of entries, for example 100,000 users can take up appropriately 10 GB of storage
NOTE: The maximum SQL Express database is 10 GB.
Software
Usercube uses a SQL Server database and supports SQL Server 2016 or later.
The database requirements may depend on the chosen SQL Server edition and version.
Recommended features
The following features are also highly recommended:
-
Always On availability groups: only available in the Enterprise edition of SQL Server 2016 or later
FAQ: How to enable Always On availability groups in SQL Server?
-
Database Mirroring: available in all editions of SQL Server 2016 or later
-
The data history feature introduced in Usercube v5.1.0, might cause some tables to grow significantly.
Database performance is greatly improved by enabling the Table Partitioning feature for the
UR_Resource
andUP_Assigned*
tables:UP_Assigned*
TablesUP_AssignedResourceTypes UP_AssignedSingleRoles UP_AssignedCompositeRoles UP_AssignedNavigationRules UP_AssignedScalarRules This feature is available and enabled by default in SQL Server 2016 or later.
Additional tools
The installation and setup of the database require using either
SQL server Management Studio
or the
sqlcmd
command line tool.
SQL Server Authentication
Usercube can authenticate to SQL Server using either a SQL Server authentication login or a Windows authentication login.
Netwrix recommends using the Windows authentication login to avoid storing a plain text password in the technical configuration files.
SQL Server Roles
The database administrator must be able to assign the following roles to the service account used by Usercube to access the SQL Server database:
-
db_owner
which is a database-level role. This role grants its owner the authorization to perform all configuration and maintenance activities on the database, and to drop the database in SQL Server. -
bulkadmin
which is a server-level role. This role grants its owner the authorization to perform bulk operations on the database.Although
bulkadmin
is a server-level role, it still requires Usercube to have database-level permissions granted by thedb_owner
role. It means that bulk operations can be performed on the database only if Usercube has been granted thedb_owner
role.Granting
bulkadmin
role to the server's service account requires access to an account member of thesysadmin
orsecurityadmin
server-level role on the target SQL Server. See the Install the Server topic for additional information.
For more information about identity and permission management in SQL Server, see Microsoft's documentation.
Shared SQL Server and Dedicated Database
Usercube's SQL Server installation can be used to host other database applications.
Usercube's database itself must be used exclusively for Usercube.
Connection to the Server
SQL feed must be open from Usercube's server to SQL Server.
Optimization
The max degree of parallelism (MAXDOP) must be set to 1 in the SQL database.
What's Next?
Let's move on to the requirements for Usercube's server. See the Server topic for additional information.