Reporting and analytics on your live MariaDB database
Semavex connects to MariaDB directly, reads its schema and indexes, and gives your team saved reports, scheduled delivery and AI analysis without a warehouse in between. Vexon, the AI agent in Semavex, builds the semantic model and answers the questions.
What Semavex reads from MariaDB
- Tables, columns, primary keys and foreign keys from
INFORMATION_SCHEMA - Every index with its columns, type (BTREE, HASH, FULLTEXT, SPATIAL) and uniqueness
- Row estimates, and the cardinality of each index's leading column
- MariaDB has no partial or INCLUDE indexes, so plans are built around composite index prefixes and uniqueness
How reports stay out of your application's way
InnoDB's consistent reads take no row locks, so a report does not block your application's writes. By default, Semavex reads MariaDB at READ UNCOMMITTED, which can include rows from transactions that have not committed yet. Choose Database Default for the data source to read committed data only.
Each query runs with a time limit: 30 seconds for interactive questions and 120 seconds for scheduled reports. The script below also caps each statement at 120 seconds on the server side with MAX_STATEMENT_TIME, which is in seconds.
Versions with known wrong results are refused
When you connect, Semavex checks your MariaDB version. It refuses versions older than 10.3, the short-term 10.7 to 10.10 series, the pre-release 11.0.0 and 11.0.1 builds, and builds affected by MDEV-25736, a bug where ROW_NUMBER() returns wrong numbers in a query shape Semavex uses for rankings. The fix is in 10.3.38, 10.4.28, 10.5.19, 10.6.12 and 10.11.2.
Series that are out of vendor support are accepted with a warning; the long-term releases 10.11, 11.4 and 11.8 are recommended. Connections always use TLS, and accounts can sign in with mysql_native_password, ed25519 or PARSEC.
Connect with a read-only account
Run this as an administrator, then enter the account when you add the data source in Semavex. Replace the values in angle brackets.
CREATE USER 'semavex_ro'@'<semavex-address>' IDENTIFIED BY '<strong password>' REQUIRE SSL;
GRANT SELECT, SHOW VIEW ON <database>.* TO 'semavex_ro'@'<semavex-address>';
ALTER USER 'semavex_ro'@'<semavex-address>' WITH MAX_USER_CONNECTIONS 10 MAX_STATEMENT_TIME 120;REQUIRE SSL makes the account work over TLS only, and MAX_STATEMENT_TIME aborts any statement after 120 seconds.What your team gets on MariaDB
- Saved reports with subtotals, grand totals, number formats and conditional formatting
- Scheduled email delivery as PDF, CSV or Excel
- Period comparisons, rolling periods, running totals, rankings and top-N
- AI explanations from exact statistics over the whole result
- Report chat: change a saved report by asking
- Data alerts on your thresholds, as often as every 15 minutes (Enterprise)
Questions about MariaDB
Which MariaDB versions are supported?
10.3 and later, except builds affected by MDEV-25736 and the short-term 10.7 to 10.10 series. Semavex is tested against MariaDB 11.4 on every build and recommends 10.11, 11.4 or 11.8.
Which authentication plugins work?
mysql_native_password, ed25519 and PARSEC.
Do connections use TLS?
Yes. Semavex always connects to MariaDB over TLS, and the script on this page makes the account refuse anything else.
See Semavex on your MariaDB database
Book a demo and we will walk through the semantic model, a few reports and a schedule on data like yours.