A Self-Hosted Database Application Platform
Built with CodeIgniter 2.1.4 and Flat UI Pro
Databased is a self-hosted database application, allowing access to MySQL databases for both non-technical and technical users.
Itβs not (yet) a replacement for phpMyAdmin or advanced MySQL administration tools β instead, it focuses on making MySQL management accessible to regular users such as sales teams, customer service, and accountants.
Built using CodeIgniter 2.1.4 and Flat UI Pro, Databased combines simplicity with a polished user interface.
To install Databased, ensure you have:
- PHP 5.1.6 (older versions might work)
- Apache webserver
- MySQL (with InnoDB and foreign key support)
- Root access to your MySQL server
- phpMyAdmin for initial setup
- FTP tool for uploading files
Databased is built on CodeIgniter and Flat UI Pro.
Controllers (/application/controllers/):
account.php, admin.php, columnnotes.php, columns.php, dashboard.php, db.php,
recordnotes.php, revisions.php, roles.php, table_datasource.php, tablenotes.php, users.php
Models (/application/models/):
columnnote_model.php, db_model.php, issue_model.php, recordnote_model.php,
relation_model.php, revision_model.php, role_model.php, table_model.php,
tablenote_model.php, user_model.php
Views (/application/views/):
All files are custom except /application/views/auth.
/bootstrap β Core Bootstrap elements
/css β Custom CSS
/custom β LESS + CSS
/fonts β Fonts used in Databased
/images β Application images
/js β Flat UI Pro JavaScript
/less β Original LESS files
/assets β jQuery plugins and support files
/swf β Files used by jQuery DataTables plugin
π‘ Before installing, ensure your hosting supports CodeIgniter 2.1.4 (99% of hosts do).
Upload or extract Databased.zip to your web hosting (root or subfolder).
Verify that .htaccess is present in the target folder.
- Create a new MySQL database via phpMyAdmin.
- Import
Databased.sqlfrom the application folder. - Do not modify the created tables.
Edit these files via FTP:
-
Update support email:
$config['support_email'] = 'support@somedomain.com';
-
Set encryption key:
$config['encryption_key'] = 'SecretKeyGoesHere';
-
Optional: Remove
index.phpfrom URLs by editing$config['index_page'].
Enter your database credentials here. π Use a MySQL user with root access.
Default credentials:
Username: admin@admin.com
Password: password
β οΈ Change these immediately after login.
- Manage or create MySQL databases.
- Enable or disable databases from the interface.
- Only admin users can manage databases.
- Green circle = supported, Red = not compatible.
- Access restricted by user role.
- Admin users can manage permissions for each table.
- Non-admin users can share or keep tables private.
Define private tables per role β users only see their own records.
Supported types:
- Numbers (up to 11 digits)
- Text (small/big)
- Date
- Select dropdowns
- Files and images (upload via advanced editor)
Link columns between tables for relational data.
E.g., connect customers.customerBook β books.books_title.
Validation rules supported:
| Rule | Description | Example |
|---|---|---|
| required | Field cannot be empty | β |
| min_length | Must be β₯ X characters | min_length[6] |
| max_length | Must be β€ X characters | max_length[12] |
| exact_length | Must be exactly X characters | exact_length[8] |
| greater_than | Must be greater than X | greater_than[8] |
| less_than | Must be less than X | less_than[8] |
| alpha | Alphabetic only | β |
| alpha_numeric | Alphanumeric only | β |
| alpha_dash | Letters, numbers, dash, underscore | β |
| numeric | Numbers only | β |
| integer | Whole numbers | β |
| is_natural | 0,1,2,3,β¦ | β |
| is_natural_no_zero | 1,2,3,β¦ | β |
| valid_email | Valid email format | β |
| valid_emails | Comma-separated valid emails | β |
| valid_ip | Valid IPv4/IPv6 address | β |
Supports CSV file imports (Excel β export as CSV first).
- Use the green β button at the bottom-left.
- Select Import Data tab.
- Enter table name and upload CSV file.
- Optionally tick βFirst row contains column namesβ.
- Open the table β click Import Data.
- Upload CSV matching the table structure.
- Adjust delimiter/enclosure only if needed.
- Define user roles (e.g., Sales, Support, Accounting).
- Each user is mapped to a MySQL user.
- Permissions apply per database and table.
- Admins can manage users, roles, and reset passwords.
- Built-in password recovery system.
β οΈ Do not delete or modify the βAdministratorβ role (ID = 1).
- Auto-saves old values of cells and records.
- Restore any previous version anytime.
- No auto-expiry (manual cleanup available).
- Connect columns across tables (foreign keys).
- Works only with InnoDB tables.
- Admin permissions required for setup.
- Once configured, linked columns show dropdowns.
Attach notes to:
- Columns
- Tables
- Databases
All users can add notes. Admins can edit or delete any note.
- Login as Admin
- Go to Database β Manage Databases
- Find your database β ensure GREEN circle
- Check βEnable database in Databasedβ
- Login as Admin
- Database β Manage Databases β Create Database
- Enter name, tick βEnable in Databasedβ
- Click βCreate databaseβ
- Login with table-modify permissions
- Click green β button (bottom left)
- Enter table name and columns
- Click Add Table
- Login with modify permissions
- Go to Database β Table β Columns
- Edit column β choose βConnect toβ
- Select table/column β click Update column
- Database β Table β Columns
- Use checkboxes to toggle visibility
- Click Reload Data View
- Database β Table β More
- Update table name β click Update Table
- Login as Admin
- Go to Users β Select User
- Edit info β click Update
- Roles & Permissions β Select Role
- Adjust access levels β click Save Permissions
Browser must have Flash installed.
- Open database & table
- Use filters
- Click CSV / Excel / PDF button
π§ Databased β Simplifying Database Management for Everyone.
Built with β€οΈ using CodeIgniter and Flat UI Pro.