The Silverstripe Database Artefact Cleaner identifies and offers the option to remove unused tables, columns, and indexes in a Silverstripe database.
Over time, as the database schema evolves, Silverstripe's schema management tools may leave behind obsolete tables, columns, and indexes. This package assists developers by displaying these unnecessary artefacts and provides the option to delete them, ensuring a cleaner and optimized database.
To install the Artefact Cleaner, use the following composer command:
composer require --dev oddnoc/silverstripe-artefactcleaner
You can run the cleaner task using either the command line or directly through the browser. For MariaDB users (version 10+), the ifexists=1
option can be added to prevent errors if the targeted column or index doesn't exist during the dropping=1
operation.
vendor/bin/sake dev/tasks/ArtefactCleanTask
vendor/bin/sake dev/tasks/ArtefactCleanTask dropping=1
vendor/bin/sake dev/tasks/ArtefactCleanTask dropping=1 ifexists=1
https://example.org/dev/tasks/ArtefactCleanTask
https://example.org/dev/tasks/ArtefactCleanTask?ifexists=1
https://example.org/dev/tasks/ArtefactCleanTask?dropping=1
https://example.org/dev/tasks/ArtefactCleanTask?dropping=1&ifexists=1
This package was inspired by silverstripe-dbplumber by smindel.
4.1.0