I have the following criteria
Database should be protected with a username and password. It should not be possible to copy the database file and use it else were like MS Access.
There will be no central database server. Each machine will run their own database server locally and user will initiate synchronization. Concept is inspired from distributed version control system like Git. So it should have good replication support.
Strong consistency is not needed. Users will synchronize each other database when they need. In case of conflicts it should be possible to find the conflict and present it (from application) to the user for fixing it.
Revisions of data if available it will be good. e.g. Entire history of change to a invoice.
I explored document oriented database and inclined towards the same. But I dont know what to choose.
Database is small it will not reach even 1GB in the next few years (say 3 years).
Please feel free to suggest any database which you think might be suitable. Any pointers is highly appreciated.
Thanks in advance.