hi

you can find it multiple places :)

fineract-provider/src/main/resources/db/changelog is the common one, 
- where “tenant-store” directory contains the liquibase scripts to build the 
tenant store tables and entries (fineract_tenants database)
- where “tenant” directory contains the liquibase scripts to build the tenant 
tables (fineract_default database)

Also we started to modularize the Fineract, so you might found additional 
liquibase scripts int the modules (like: 
fineract-loan/src/main/resources/db/changelog/tenant/module/loan)

Liquibase is by default enabled, so it should be executed when you are running 
the application as jar or as bootRun, unless you are executing Fineract with 
"liquibase-only” profile or FINERACT_LIQUIBASE_ENABLED environment variable is 
set to FALSE.

I hope it helps.

The above details are applicable to the latest version of Fineract 
(apache/develop, 1.8.0 and 1.9.0 if i remember correctly )

Regards,
Adam

> On 7 May 2024, at 16:47, Joan Moreau <j...@grosjo.net> wrote:
> 
> Hi
> 
> Would really appreciate to know where to find the mariadb schema to upload 
> before starting the process
> 
> For now, it asks for tables that of course do bot exist as never created 
> 
> Thank you very much in advance 
> 
> On 6 May 2024 16:38:01 Joan Moreau <j...@grosjo.net> wrote:
> 
>> 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 
>>>> <mailto: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 
>>>>>>> <mailto: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