HiveBrain v1.2.0
Get Started
← Back to all entries
patternModerate

Choosing relational DB for a small virtual server with 1Gb RAM

Submitted by: @import:stackexchange-dba··
0
Viewed 0 times
1gbwithrelationalsmallforserverramchoosingvirtual

Problem

I am trying to find a decent relational database that would run on a small server, would be easy to administer and have much community love.

I need a lightweight relational database for my personal Ubuntu server with only 1Gb of RAM. It would be used for occasional reads and writes, so high performance is not required.

I considered popular options like MySQL and PostgreSQL, but those consume too much resources, even MariaDB may be too heavy since other projects should run on my server too.

I considered Firebird, but it turned out to be not very intuitive for me and troubleshooting is difficult without much community-generated guides.

I'm wondering if it's worth learning a niche database like Firebird for small pet projects. Are there any alternatives that require minimal RAM, have intuitive administration, drivers and ORM, and community support?

Solution

You could try SQLite.

It's the most lightweight, relational database system, with enough support, documentation, and user base to be considered mainstream, in my opinion. It's easy to learn and mostly follows the SQL standard. So, you'd be able to apply a lot of the syntactical knowledge gained to other relational database systems.

It's actually meant to be portable too, as one of its main use cases is for mobile applications that internalize the database on the mobile device. So, it's meant to operate in a lightweight fashion.

Though even smart mobile devices ran on more than 1 GB of memory when they first came out. I personally think anyone trying to run anything on that little of hardware is fighting an unnecessary uphill battle.

SQLite is an embedded database, meaning that your actual application process interacts with the database file, and there is no server involved. You can get programs that allow you to do queries over a network, like a normal database server, but SQLite isn't designed for this.

Context

StackExchange Database Administrators Q#325757, answer score: 10

Revisions (0)

No revisions yet.