When to and not to use SQLITE

I writing this to see if i have the right understanding of sqlite, since i am using sqlite for my personal deployment. so, to the pros, please correct me if im wrong. i want to learn more. i base these from sqlite website


SQLite Quick Intro
SQLite is a server-less database, embedded in onwcloud, where it is stored as a single file locally. so, as long as PHP extension sqlite is loaded, it can be deployed on a webserver without a database server (i.e mysql)
but, it has no users access control (i.e multi users,rights management). Although, SQLite supports an unlimited number of simultaneous data read, it will only allow one write at any instant in time.

When to use it

  1. Single user
    It Meant that Only single user, single device is using it, like uploading files, at any given time, sharing files for download with multiple visitors(non-user) is okay.

  2. Low Powered Devices or host
    for Low powered device, like RPi 1/zero or old intel P3, i prefer sqlite since consume no process by its own. processes are tied to php.
    this is best as long as you follow single user rule. (multiple users owncloud on RPi, come on, it is gonna be slow and unusable)

  3. webhost with limited or without supported databse
    again as long as single user rule is followed, you can use sqlite.For rare hosting site that dont provide mysql or hoster that has a limited databases, sqlite is a godsend.

  4. Low traffic sites
    sqlite is design for low traffic (up to 100K to 1M hits/day).if you have or planning on a heavy trafic site, i advise to stay away

When not to
Use myslq/MariaDB.if any of the following is true

  1. planning on multi user
  2. plan to scale up
  3. plan for high traffic
  4. have a decent HW
  5. dont want sqlite limitations
    if you have a choice, always choose myslq/MariaDB, as it has the best support and feature for owncloud.
    hope this help you newbies out there.
1 Like