Using SQL Server as the External Configuration Database

  • Last update: 2026-04-08
  • Overview

    In FanRuan applications, you (the admin) typically configure users, mount directories, assign permissions, and set scheduling plans. All the configuration is stored in a configuration database.

    In production environments, you can prepare a SQL Server database to connect it with FanRuan applications for configuration storage. A stable external database ensures the reliable operation of FanRuan applications under high load.

    This document explains how to connect a FanRuan project to a SQL Server database to store project configuration information:

    • You can prepare a tablespace in an Oracle database and tune parameters.

    • After deploying a project, you can connect the project to this configuration database.

    Preparing the Configuration Database

    You must prepare and deploy the SQL Server database and tablespace by yourself.

    FanRuan does not provide detailed guidance on database deployment. Only essential requirements are specified. Refer to the official SQL Server documentation for additional assistance.

    iconNote:

    If you lack database O&M expertise, select Deploy Mysql8 when deploying a new project via FineOps. This eliminates the need for manual deployment and tuning. 

    Database Version

    The following table lists FanRuan-tested environments.

    • Databases of earlier versions not mentioned are generally not supported or contain known issues; thus, they are not recommended.

    • You can test databases of higher versions that are not mentioned. If issues arise, premium customers can contact technical support. For details about how to contact technical support, see Technical Support Channel Introduction.

    Database Type
    Database Version
    SQL Server2000, 2005, 2008, 2012, 2014, 2016, 2017, 2019

    Server Configuration

    Configuration Type
    Minimum ConfigurationRecommended ConfigurationNotes
    Memory1 GB2 GB

    It refers to the memory allocated to the configuration database, not total server memory.

    A dedicated server for the configuration database is recommended. 

    If resources are limited, ensure that no content other than the FanRuan application is deployed on the server hosting the configuration database, and ensure sufficient memory is allocated to the configuration database.

    CPU4 cores8 cores/
    Network speed50 Mbps100 Mbps

    The configuration database, application, and other components should be on the same network segment to avoid network instability.

    Ensure network connectivity and accessible ports between the configuration database, application, and other components.

    FineDB-used space1 GB2 GB

    Adjust it based on usage.

    Allocate 1 to 2 times the recommended size of space.

    Disk space100 GB200 GB/
    Disk I/O speed50 MB/s100 MB/s/

    Creating a New Tablespace

    Different FanRuan projects cannot share the same database tablespace as the configuration database. Otherwise, data corruption may occur.

    Therefore, you are advised to create a new tablespace in the database to store configuration data.

    The standard tablespace creation statement is as follows:

    CREATE DATABASE finedb COLLATE Latin1_General_100_CS_AS;
    Configuration
    Description
    Tablespace name

    The name finedb in the statement

    • Only letters, underscores (_), and dots (.) are allowed. Numbers are not supported.

    • Do not store any other data (such as business data and logs) in this tablespace.

    CollationYou are advised to set the default database collation to Latin 1 General 100 CS AS (case-sensitive).
    • Latin1_General_100_CS_AS: It means case-sensitive. All data is migrated as-is during data migration, without any case conversion

    • Latin1_General_100_CI_AS: It means case-insensitive and may cause errors during data migration, such as PRIMARY KEY constraint violations. If such errors occur, run the following SQL query to view dirty data:

    select lower(ID),COUNT(1) FROM FINE_CONF_ENTITY GROUP BY LOWER(ID) HAVING COUNT(1) >1

    Preparing Configuration Database Information

    Prepare the following tablespace information to connect it to the project as the configuration database.

    Setting Item
    Description
    Database name

    Name of the tablespace created in the "Creating a Tablespace" section

    Only letters, underscores (_), hyphens (-), and periods (.) are allowed.

    HostIP address of the database server
    PortDatabase port on the server
    Username

    Database username

    The user must have CREATE, DELETE, ALTER, UPDATE, SELECT, INSERT, and INDEX privileges to support configuration table structure changes and configuration updates. 

    Password

    Database user password

    After the configuration database is successfully connected, do not change the username or password. Otherwise, the project will fail to start.

    SchemaName of the prepared database user

    Connecting the Project to the Configuration Database

    Choose the appropriate connection method based on the actual conditions.

    Connection via FineOps Cluster Management

    You can configure a self-prepared SQL Server database as the configuration database in FineOps’s Cluster Management.

    Verifying the FineOps Version

    This document provides instructions based on FineOps of the latest version. Ensure FineOps is of V2.31.0 or later versions.

    • For projects requiring no configuration data migration, FineOps of V2.30.0 and earlier versions cannot restart projects automatically.

    • For multi-application projects, FineOps of V2.29.0 and earlier versions require ensuring only one application node is active during configuration service connection or migration.

    For details, see Extranet-Based FineOps Upgrade and Intranet-Based FineOps Upgrade.

    Configuring the External Configuration Database

    1. Log in to FineOps as the admin. Select the target project, choose Maintenance > Cluster Management, and configure External Configuration Database.


    2. Enter the database information:

    • Database Type: Select SQL Server.

    • Driver: No change is required. Keep com.microsoft.sqlserver.jdbc.SQLServerDriver.

    • Database NameHostPortUsernamePassword: Enter the information prepared in the "Preparing the Configuration Database" section.

    3. Set Schema:

    • After filling in all the above information correctly, click Click to Connect Database in the drop-down list of Schema. The system will automatically connect to the database and read the schema.

    • Prefer the schema that matches the database username.

    4. Database Connection URL:

    Generally, no manual modification is needed. It is generated from other configuration and preset parameters.

    5. Choose whether to tick Migrate Data to Database to Be Enabled:

    Scenario
    New SQL Server Configuration Database Status
    Use the current project's existing configuration.

    1. Migrate Data to Database to Be Enabled must be ticked.

    2. After a successful connection, the existing configuration data of the project will be migrated to the tablespace.

    3. Any existing data in the new SQL Server tablespace will be cleared and cannot be recovered.

    Use the configuration from another project. (For example, copy the production environment configuration to a test environment.)

    1. Upload the prepared configuration data to the new SQL Server tablespace.

    Ensure the JAR package version of the source project exactly matches the JAR package version of the current project

    2. Do not tick Migrate Data to Database to Be Enabled

    3. After a successful connection, the project will use the data in the tablespace as its configuration. 

    4. Original connection information will be backed up to the db.properties.bak file in the config directory of the project

    5. Historical configuration cache exists in the project. Restart the project after a successful configuration database switchover to clear the cached configuration.

    6. Click Enable Database.

    Restarting the Project (with Migrate Data to Database to Be Enabled Unticked)

    If Migrate Data to Database to Be Enabled is unticked, the historical configuration cache will remain in the project after the configuration database switchover. You must restart the project to clear the cache.

    • FineOps-deployed projects: FineOps automatically restarts the project after a successful configuration database switchover.

    • Projects not deployed via FineOps: Manually restart the project after the switchover. For details, see Closing or Restarting the FineBI Project.

    Connection via System Management

    You can configure a self-prepared SQL Server database as the configuration database under System Management > System Setting > General of the FanRuan application.

    Ensuring a Single Active Application (Required for Multi-application Projects)

    For multi-application projects, ensure only one application node is active during configuration service connection or migration.

    Log in to FineOps as the admin. Select the target project and choose Maintenance > Component Management. Check if multiple bi-web/fr/fdl containers are active.

    If multiple containers exist, click the  icon of each container to stop other containers, leaving only one in active status.

    iconNote:
    For projects not deployed via FineOps, stop other main applications by referring to Closing or Restarting the FineBI Project and keep only one active.

    Configuring the External Configuration Database

    1. Log in to the FanRuan application as the admin. Choose System Management > System Setting > General

    2. Locate External Database and configure it.

    3. Enter the required information:

    • Database Type: Select sqlserver.

    • Driver: No change is required. Keep com.microsoft.sqlserver.jdbc.SQLServerDriver.

    • Database NameHostPortUsername, and Password: Enter the information prepared in the "Preparing the Configuration Database" section.

    4. Set Schema:

    • After filling in all the above information correctly, click Click to Connect Database in the drop-down list of Schema. The system will automatically connect to the database and read the schema.

    • Prefer the schema that matches the database username.

    5. Database Connection URL:

    • Generally, no manual modification is needed. It is generated from other configuration and preset parameters.

    6. Choose whether to tick Migrate Data to Database to Be Enabled:

      Scenario
      New SQL Server Configuration Database Status

      Use the current project's existing configuration.

      1. Migrate Data to Database to Be Enabled must be ticked.

      2. After a successful connection, the existing configuration data of the project will be migrated to the tablespace.

      3. Any existing data in the new SQL Server tablespace will be cleared and cannot be recovered.

      Use the configuration from another project. (For example, copy the production environment configuration to a test environment.)

      1. Upload the prepared configuration data to the new SQL Server tablespace.

      Ensure the JAR package version of the source project exactly matches the JAR package version of the current project

      2. Do not tick Migrate Data to Database to Be Enabled

      3. After a successful connection, the project will use the data in the tablespace as its configuration. 

      4. Original connection information will be backed up to the db.properties.bak file in the config directory of the project

      5. Historical configuration cache exists in the project. Restart the project after a successful configuration database switchover to clear the cached configuration.

    7. Click Enable New DatabaseThe message “Migrated successfully” indicates a normal connection.

    Ensuring Multi-application Configuration Synchronization (Required for Multi-application Projects)

    1. Copy the db.properties file.

    Navigate to the server hosting the single active bi-web/fr/fdl container and copy the db.properties file in the component mounting path /config.

    Paste the file to the same location on all other bi-web/fr/fdl container servers.

    iconNote:
    For projects not deployed via FineOps, copy db.properties from /webroot/WEB-INF/embed in the single active application directory to the same location in all other application directories.


    2. Stop all applications.

    Log in to FineOps as the admin and choose Maintenance > Component Management.

    Click Stop on all FineBI - Application Node/FineReport/FineDataLink components. Ensure all bi-web/fr/fdl containers are in the exited status.

    iconNote:
    For projects not deployed via FineOps, stop the single active application by referring to Closing or Restarting the FineBI Project.


    3. Restart all applications.

    Click Start on all FineBI - Application Node/FineReport/FineDataLink components under Maintenance > Component Management. Ensure all bi-web/fr/fdl containers are in the running status.

    iconNote:
    For projects not deployed via FineOps, start all main applications in the cluster one by one by referring to Closing or Restarting the FineBI Project.

    Attachment List


    Theme: Project Management
    • Helpful
    • Not helpful
    • Only read

    滑鼠選中內容,快速回饋問題

    滑鼠選中存在疑惑的內容,即可快速回饋問題,我們將會跟進處理。

    不再提示

    10s後關閉

    Get
    Help
    Online Support
    Professional technical support is provided to quickly help you solve problems.
    Online support is available from 9:00-12:00 and 13:30-17:30 on weekdays.
    Page Feedback
    You can provide suggestions and feedback for the current web page.
    Pre-Sales Consultation
    Business Consultation
    Business: international@fanruan.com
    Support: support@fanruan.com
    Page Feedback
    *Problem Type
    Cannot be empty
    Problem Description
    0/1000
    Cannot be empty

    Submitted successfully

    Network busy