Features
bonSQL starts from SQLyog Community and fixes what its users asked for. Issue numbers link to the reports on SQLyog Community’s own tracker.
New in bonSQL
The most requested
- A real dark theme. The most-voted request on SQLyog Community’s tracker (#2158). The main window, the grids, the editors, the dialogs, the drop-down lists and the scroll bars all go dark, and each connection’s own colours still apply.
- SSH tunnels and SSL/TLS, free. In SQLyog both were reserved for the paid editions. bonSQL connects through SSH with a password or a key, remembers each server’s host key, and connects over TLS with or without certificate checks and with client certificates.
- Stopping a query works again. On MySQL 8.3 and later, Stop gave “Unknown command” and could hang (#2363), and killing a query from a second window could drop both connections (#2233). Both fixed, and the Processlist has a Kill Query button.
- How long is it taking? The status bar shows a running query’s time as it goes (#2135).
- Table Data remembers each table’s sort and filter for the session (#2137), and can open on the newest rows first (#2369).
- Processlist filter, and a box to hide sleeping connections (#2295).
MariaDB and today’s MySQL
- MariaDB JSON columns are recognised as JSON, with the JSON viewer, formatting and validation (#2297).
- User Manager reads the privileges each server actually has, including MySQL 8’s dynamic privileges and MariaDB’s newer ones (#2354), and manages roles (#2322).
- Sequences (MariaDB) in the Object Browser, with editors to create and change them.
- System-versioned tables, application-time periods, invisible and compressed columns in the table designer.
- Data types per server, including
INET4,INET6,UUIDandVECTORwhere the server has them. - Keywords and functions per server, so syntax colouring matches MariaDB or MySQL (#2180, #2355).
- Flush offers only what the server supports (#2358).
- Foreign key rules shown correctly on MariaDB, including RESTRICT (#2290).
- Current client library: MariaDB Connector/C 3.4 with OpenSSL 3, including MySQL 8’s
caching_sha2_passwordand MariaDB’sed25519sign-in.
Long-standing bugs, fixed
- Init commands now run again after a reconnect (#2226).
- The Execute button works in the view, procedure, function, trigger and event editors (#2144).
- Execute SQL Script keeps
#and--comments inside procedures (#2143). - F8 on a selected query gives an editable result (#2215).
- JSON with escaped quotes is no longer mangled by the grid editor (#2227).
- BIT values are exported correctly in every format (#2152).
- Rows in tables without a primary key can be edited even when they hold FLOAT columns (#2175).
- Find shortcuts work in the field viewer (#2261).
- The table designer no longer crashes if its tab is closed while a change is being saved.
- PuTTY’s plink is current (#2353).
Editing fields
- Syntax colouring in the BLOB, TEXT and JSON field viewer, for JSON, XML, HTML and SQL.
- A Format button that lays out JSON and XML.
- A current editor engine (Scintilla 5) throughout.
Clean and quiet
- No adverts, upgrade prompts or nag screens. Menu items and preference pages for features the free edition never had are gone, not greyed out.
- No calls home. bonSQL connects to your servers and nothing else, apart from an optional check for new versions. There is no notifications feed and no usage tracking.
- Your SQLyog settings come with you. On its first start bonSQL offers to import SQLyog’s saved connections, favourites and preferences, and leaves SQLyog’s files untouched.
- Open all the way down. Every component’s licence is on record, the Info tab is drawn by an open-source HTML engine instead of a closed one, and the icons are new.
Everything from SQLyog Community
Connections
- Saved connections with colours, cloning, testing, and export and import of connection details.
- Several connections open at once, each in its own tab; a new connection with the current one’s settings.
- Compressed protocol, session idle timeout, keep-alive, SQL mode and init commands per connection.
- Sessions: reopen your connections and query tabs where you left them.
Object Browser
- Databases, tables with their columns and indexes, views, stored procedures, functions, triggers and events.
- A filter box, and the same keys everywhere: F4 create, F6 change, F2 rename, Del drop.
- Paste ready-made INSERT, UPDATE, DELETE and SELECT statements for a table.
Query editor and results
- Several query tabs per connection, open and save
.sqlfiles, favourites and templates. - Run the current query, all queries, or a query with an editable result; EXPLAIN.
- Syntax colouring, find and replace, upper and lower case, comment and uncomment.
- A result tab per statement, a Messages tab with rows and timings, a History tab, and an Info tab describing the selected object.
Tables and data
- Table designer: columns (types, defaults, generated columns, comments, order), indexes (including full-text and spatial), foreign keys, check constraints, table options, and the SQL before it runs.
- Table Data: browse with paging, sort and filter, edit in place, add and delete rows, BLOB/TEXT and JSON viewer, date picker, ENUM and SET pickers, foreign key value lookup.
- Duplicate, rename, truncate and drop tables; reorder columns; change the engine.
Import, export and backup
- Back up databases and tables as SQL dumps, with structure, data or both and many options.
- Run SQL scripts without loading them into the editor.
- Import CSV and XML with LOAD DATA LOCAL.
- Export tables and results as CSV, JSON, HTML, XML, Excel XML or SQL.
- Copy databases and tables to another server.
- Describe a database in HTML.
Server tools
- User Manager: users, passwords, sign-in plugins, resource limits and privileges down to the column.
- Table diagnostics: check, analyse, optimise and repair.
- Server variables, status and processlist.