# Database structure

If you are interested in the database structure for Chamilo 1.\*, please check our wiki for the full schematics: <https://github.com/chamilo/chamilo-lms/wiki/Database-structure>. Just know that there are around 180 tables, with a lot of interconnections, so make sure you get it right before trying to tamper with it. There are different mechanisms to develop plugins based on the current structure, without modifying it. Please contact the developers through Slack or through <https://github.com/chamilo/chamilo-lms/issues> if you feel lost.

![](/files/-LioWDbl7St1E6xx0cBj)

*Illustration: Chamilo LMS 1.9 database structure*

The database structure has changed dramatically between Dokeos or Chamilo LMS 1.8 and Chamilo LMS 1.9. We moved everything into one single database with no table replication, which is giving us a series of new opportunities for inter-courses mash-ups now.

It is important to note that **the database structure does not change between Chamilo LMS minor versions**. Not a bit. This comes from a difficult-to-manage but very useful decision taken at the developers level to make sure users can easily upgrade from one version to another without risks of causing data losses or degradation.

So, if you have a Chamilo LMS 1.9.0 install, you can upgrade to 1.9.2, 1.9.4 or 1.9.6 easily, and your database structure will not change at all.

Upgrading to 1.10 and 1.11 are larger step (major version upgrades) but are also possible. Just don't try to upgrade directly from 1.9 to 1.11 (do that in two steps), always keep a backup, check the supported PHP version of the *destination* version, and know that, depending on the amount of data you have stored, the major version upgrades can take several hours to complete.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.chamilo.org/1.11.x/admin-guide/appendix/database_structure.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
