Help for Database Administrators
Run the database behind Exponential: the supported databases, schema and upgrades, backups and restores, and performance.
58 pages
Start here
Read these pages in this order.
- Database administrators: start here Where database administrators start with Exponential. The six supported engines in one paragraph, a first f...
- Migrations The start of everything about migrations in Exponential 6.0.15 - schema and content changes written once as...
- Migrations versus migrating a site The word migration means two different jobs in the Exponential documentation - migrations (schema and conte...
- When a migration fails: troubleshooting by symptom Troubleshooting migrations by what you see - a failed run, a refused run, a migration that does not run or...
- Migrations: frequently asked questions Short answers to the questions people ask about migrations in Exponential 6.0.15 - what they are for, how t...
- The database layer in one page How Exponential reaches its database, explained for database administrators - the eZDB entry point, the dri...
Good to know
-
Migrations on hosted sites
What a customer's migration run does to your servers - the installation lock, the captions (database dumps and file copies) and their disk space, maintenance mode, background runs started from the administration, the…
-
Migrations
The start of everything about migrations in Exponential 6.0.15 - schema and content changes written once as files under version control and applied to every installation of a site in the same order, with a caption…
-
Migrations on MySQL, PostgreSQL, SQLite, Oracle and MongoDB
What each database engine means for a migration - transactions, the simulation, captions and the restore, schema changes that commit at once - and how to write one migration that works on MySQL/MariaDB, PostgreSQL…
-
Coming from SQL update files
For teams that ship database changes as hand-written SQL files and update scripts - how one change becomes one PHP migration that knows every engine, is recorded, captioned and committed, with a worked example of an…
-
Captions and rollback in practice
Walk through the ways back after a migration run - the automatic restore after a failure, rolling back a whole run, one migration with its down(), an earlier caption for experts - with the commands, their output and…
-
When a migration fails: troubleshooting by symptom
Troubleshooting migrations by what you see - a failed run, a refused run, a migration that does not run or runs where it should not, a held lock, nothing restored, a push that waits, a run in the administration that…
Search by topic
Each button lists the pages of one topic for Database Administrators.
Key pages
All pages for Database Administrators- Supported engines and versions The six databases Exponential 6.0.x supports, in the project's official order, with the three version numbers that matter for each (the s...
- Choosing an engine A decision guide for database administrators - which of the six supported databases fits a given Exponential site, from one machine with...
- PHP extensions per engine Which PHP extension each database needs (sqlite3, pgsql, mongodb with its Composer library, mysqli, oci8), where it comes from on the com...
- Fix data A migration that corrects wrong rows - names with stray spaces, addresses over http - with a pure function that the plan, the run and a t...
- The DatabaseSettings reference Every key of site.ini [DatabaseSettings] with its shipped default, the engines that read it and what it does - connection, character set,...
- Reading and changing database settings How to read the database settings an Exponential site really uses, find the file each value comes from, change them safely in the overrid...
- SQLite 3 for database administrators What a database administrator needs to know about SQLite 3, the default database of Exponential 6.0.x - what the eZSQLite3DB driver adds...
- SQLite: the write queue and locking How the SQLite driver of Exponential 6.0.15 queues concurrent writers with a lock file and BEGIN IMMEDIATE, how long a transaction waits...
- SQLite maintenance: ANALYZE, VACUUM and the WAL file The routine maintenance of an Exponential SQLite database - statistics with ANALYZE and PRAGMA optimize, compaction with VACUUM in mainte...
- SQLite files, ownership and permissions The four files of an Exponential SQLite database, which process must be able to write which file, how to set up one common group with the...
Related audiences
Free documentation: use it to help yourself and others
This help is free documentation, licensed under the GNU Free Documentation License 1.3 or later. You may use it, share it and improve it:
- Study it Read any page as often as you like, for any purpose.
- Copy it and share it Give pages to other users, on paper or as files. Keep the copyright notice, the license notice and a copy of the license with every copy.
- Translate, adapt and improve it Share your version under the same license, with the original notices and a note of what you changed.
- Cite it Refer to a page by its title and its address in the help, or its file in the doc directory.
- Contribute fixes back Use "Edit on GitHub" on any page. Changes are accepted under the same license, so they stay free for everyone.
Exponential Copyright © 1998-2026 Exponential Foundation and 7x