I copied paste all the variables , fixing the _tenants  into _default

I still get to

Caused by: java.sql.SQLSyntaxErrorException: (conn=385204) Table 'fineract_tenants.m_adhoc' doesn't exist     at org.mariadb.jdbc.export.ExceptionFactory.createException(ExceptionFactory.java:289)     at org.mariadb.jdbc.export.ExceptionFactory.create(ExceptionFactory.java:378)


I really need to know where is the initial schema to create the required tables in MariaDB

Thank you in advance


On 5/6/24 16:19, Joan Moreau wrote:

You send me a link to XML files


I just need

(a) the actual (real ones !!! not some approximate names) variable to set

(b) where is the damn default schema to create the initial tables



On 2024-05-06 16:09, VICTOR MANUEL ROMERO RODRIGUEZ wrote:

Hello Joan,
Apache Fineract uses Liquibase, take a look at:
https://github.com/apache/fineract/tree/develop/fineract-provider/src/main/resources/db/changelog
https://docs.liquibase.com/home.html
Apache Fineract variables for MariaDB on Docker are the same as the one used for Native installations, just try them. Please read files included in the PR that I have shared, there is a startup script on it.
Regards

El lun, 6 may 2024 a las 2:04, Joan Moreau (<j...@grosjo.net>) escribió:

    Note: I am not using docker but a normal server with a normal
    MariaDB (serving multiple applications)


    On 5/6/24 16:02, Joan Moreau wrote:

    Also, the variable you mentioned do not fit the variables
    available in the source code


    In addition to teh start-up schema, where to have the actual
    variable to set to start Fineract ?


    On 5/6/24 16:00, Joan Moreau wrote:

    Thank you but that does not answer the question:

    - Where to find the initial database schema  to create the
    initial tables ?

    Thank you very much


    On 5/5/24 10:20, VICTOR MANUEL ROMERO RODRIGUEZ wrote:
    Hello,
    1. No, you can use any user that you require (root, fineract,
    mariadbuser, customeuser, exampleuser... etc).
    2. Database names are defined in these variables (please
    notices that there is a difference tenantS and tenant ) :
    FINERACT_TENANTS_DB_NAME - For tenants database
    FINERACT_TENANT_DEFAULT_DB_NAME - for the default database
    3. You are setting the values of the database in a mixed way,
    you have set variables for the default tenant as tenants and
    tenants as default database.
    By the way if you are using the develop branch or
    previous version (since 1.6) mariaDB is the supported database
    (also PostgreSQL since version 1.7.0), if you use MySQL you
    could face some issues.
    If you require to use MariaDB check this docker compose as
    reference:
    https://github.com/apache/fineract/blob/develop/docker-compose.yml
    And these are the variables linked to that docker compose.
    
https://github.com/apache/fineract/blob/develop/config/docker/env/fineract.env
    
https://github.com/apache/fineract/blob/develop/config/docker/env/fineract-common.env
    
https://github.com/apache/fineract/blob/develop/config/docker/env/fineract-mariadb.env
    In this PR you can take a look how to start the Apache
    Fineract jar file
    https://github.com/apache/fineract/pull/3879/files
    java -jar fineract-provider-*.jar -Duser.home=/tmp
    -Dfile.encoding=UTF-8 -Duser.timezone=UTC
    -Djava.security.egd=file:/dev/./urandom
    Best regards
    Victor

    El sáb, 4 may 2024 a las 8:55, Joan Moreau (<j...@grosjo.net>)
    escribió:

        Hi

        Where is stipulated the default schema of the mysql database ?

        I face 3 issues

        1 - The software seems to need to create databases as root (?)

        2 - It seems databases MUST be named fineract_tenants and
        fineract_default. How to change that behavior ?

        3 - When I put the database user to have rights on those 2
        databases, it ends-up with an error :

        liquibase.exception.DatabaseException: (conn=7381) Table
        'fineract_tenants.m_adhoc' doesn't exist [Failed SQL:
        (1146) ALTER TABLE `fineract_tenants`.`m_adhoc` CHANGE
        `IsActive` `is_active` TINYINT]


        How to initiate properly a brand new install ?

        I have the following script to start fineract:

        #!/bin/bash
        cd /data/microfinance
        export FINERACT_HIKARI_USERNAME=fineract
        export FINERACT_HIKARI_PASSWORD=mypassword
        export FINERACT_SERVER_SSL_ENABLED=false
        export FINERACT_SERVER_PORT=8080
        export
        FINERACT_HIKARI_DRIVER_SOURCE_CLASS_NAME=org.mariadb.jdbc.Driver
        export
        
FINERACT_HIKARI_JDBC_URL="jdbc:mariadb://localhost:3306/fineract_tenants?serverTimezone=UTC&useLegacyDatetimeCode=f
        alse&sessionVariables=time_zone=UTC"
        export FINERACT_DEFAULT_TENANTDB_PORT=3306
        export FINERACT_DEFAULT_TENANTDB_UID=fineract
        export FINERACT_DEFAULT_TENANTDB_TIMEZONE=GMT+0
        export FINERACT_DEFAULT_TENANTDB_HOSTNAME=localhost
        export FINERACT_DEFAULT_TENANTDB_NAME=fineract_tenants
        export FINERACT_DEFAULT_TENANTDB_PWD=mypassword
        export FINERACT_USER=fineract
        export FINERACT_GROUP=fineract
        export FINERACT_DEFAULT_TENANTDB_DESCRIPTION=GJ_Microfinance

        java -Dloader.path=/data/mmicrofinance/libs/ -jar
        fineract-provider.jar


        Thank you

Reply via email to