HeidiSQL is the free Windows GUI many shops standardize on for MySQL and MariaDB. You type "HeidiSQL Mac" when that Session manager has to live on a MacBook: an official Apple Silicon zip exists, Intel Macs get no package, Wine is documented as unstable, and Microsoft SQL Server is compiled out of the macOS build.
What ships for macOS, and what does not
Windows HeidiSQL is the complete product. It is GNU GPL, built with Delphi, and it talks to MySQL, MariaDB, PostgreSQL, SQLite, Microsoft SQL Server, Interbase, Firebird, and more. Linux uses a Lazarus build. The Mac download is a heidisql_*_macos_app.zip for ARM only. HeidiSQL's help page states it does not run on Intel-based Macs.
Chip check is one menu. Open Apple menu, About This Mac, and read the chip line. Apple M1 through M4 (and newer) can try the zip. Intel iMacs and Intel MacBook Pros cannot. There is no official x86_64 app.
The ARM app is not the Windows session manager with a new icon. It is an early native bundle: HeidiSQL's layout, MySQL and MariaDB connectivity, and a thinner Network type list. Microsoft SQL Server is disabled at compile time on Darwin. Use the zip if you want HeidiSQL's session folders on an M-series Mac. Do not expect feature parity with HeidiSQL_*_Setup.exe.
Try the ARM zip before you install Wine
- Download the macOS zip from heidisql.com/download.php.
- Unzip it and open the
.app. If macOS refuses to launch it, allow the app in System Settings > Privacy & Security. - In Session manager, click New. On the Settings tab set Hostname
127.0.0.1, User, Password, and Port3306for local MySQL or MariaDB. - Click Open. A missing client library error means the Windows installer is not there to bundle
libmysqlorlibmariadb. Switch clients instead of debugging Lazarus dylib paths. - Need SQL Server on this Mac? Close HeidiSQL. The macOS compile enables MSSQL only on Windows and Linux.
Local Docker and Laravel Herd should be reached as TCP, not as a Windows named pipe. Host 127.0.0.1 and the published port (often 3306, sometimes 3307) match what mysql -h 127.0.0.1 uses in Terminal.
Wine is a lab, not a workstation
HeidiSQL's help file says running on Wine is currently quite unstable, and it points Linux users at the native build instead. On macOS there is no matching native Intel build. CrossOver, Whisky, and a Windows VM can start heidisql.exe, then fail on libmysql.dll, High DPI scaling, and plink.exe SSH that ignore ~/.ssh/id_ed25519.
A VM is justified when you must keep existing Windows session files and SQL Server in one window. For MySQL 8.4 on 127.0.0.1:3306, a native Mac GUI opens faster.
Free native stand-ins for the MySQL workflow
| Criterion | HeidiSQL (Windows) | HeidiSQL (macOS zip) | Sequel Ace | DBeaver Community | TabulaSQL |
|---|---|---|---|---|---|
| License | GPL, $0 | GPL, $0 | MIT, $0 | Apache 2.0, $0 | MIT, $0 |
| OS | Windows | Apple Silicon only | macOS only | Windows, macOS, Linux | macOS, Windows, Linux |
| MySQL / MariaDB | Yes | Yes | Yes | Yes (JDBC) | Yes |
| PostgreSQL / SQLite | Yes | Yes | No | Yes | Yes |
| Microsoft SQL Server | Yes | No | No | Yes (JDBC) | No |
| SSH tunnel | plink or OpenSSH | Present, thinner testing | In-app, sandbox limits | In-app, jump hosts | In-app key or password |
| Intel Mac | Native | No | Yes | Yes | Yes |
Sequel Ace is the Cocoa path if you only ever use a Mac and you already like Sequel Pro. Sandbox limits on sockets and SSH are covered in Sequel Ace alternative for MySQL on Mac. DBeaver Community is the Java workbench when you also open SQL Server: see DBeaver Community vs a lighter MySQL GUI. TabulaSQL is a free MIT desktop client for MySQL, MariaDB, PostgreSQL, and SQLite on macOS, Windows, and Linux. Deepest schema tools (indexes, foreign keys, routines, user manager) sit on MySQL and MariaDB. Screenshots of that UI are on /features.
Choose on license, OS, and engines. Star ratings on download sites are not a criterion.
Recreate a HeidiSQL session in TabulaSQL
HeidiSQL keeps host details on two tabs. Copy them before you install anything else.
On Settings, write down Hostname/IP, User, Password, Port (3306 for the MySQL protocol), and any Database(s) filter. On SSH tunnel, write down SSH Host, SSH Port (22), Username, and whether you used a key or a password. HeidiSQL's docs warn you to put 127.0.0.1 on Settings when you tunnel, and the bastion hostname on the SSH tab. Using the public server IP on both tabs yields Lost connection to MySQL server at 'reading initial communication packet'.
- Install TabulaSQL from https://tabulasql.com/download. Choose the Apple Silicon or Intel
.dmg. If Gatekeeper blocks the first launch, right-click the app and choose Open. - Click New Connection. Pick the MySQL/MariaDB driver for the same server HeidiSQL opened as MySQL or MariaDB.
- Set host and port from the Settings tab. For a laptop-local server use
127.0.0.1and3306(or the Docker published port). Paste the same username and password. - If the HeidiSQL SSH tunnel tab was enabled, turn SSH on. Bastion host, port
22, SSH user, then a key file or password. Leave the MySQL host at127.0.0.1when the server listens on the far side of the tunnel. TabulaSQL does not useplink.exe. - Click Test connection. Error 1045 is a MySQL user/host mismatch (
'root'@'127.0.0.1'versus'root'@'localhost'). Error 2002 means nothing is listening on that TCP port. Error 2003 is often a dead tunnel. - Open a table, edit one cell, enable Safe Lock, and confirm the UPDATE SQL. HeidiSQL applies grid edits in its own dialogs. Safe Lock is the write preview you get here.
Saved connections stay encrypted on disk. Export a .dbmconn file when you set up a second machine. There is no HeidiSQL session importer.
PostgreSQL in HeidiSQL used port 5432 and a different Network type. In TabulaSQL, pick the PostgreSQL driver and keep 5432. SQLite is a file path, not a host, and SSH is not available for SQLite files.
When the Windows build is still the right HeidiSQL
Keep HeidiSQL on Windows (or in a VM) when Microsoft SQL Server, Interbase, Firebird, ProxySQL, or Redshift is why you opened it. None of those are TabulaSQL drivers. The Mac zip also drops SQL Server.
For MySQL and MariaDB on a Mac, prefer a native GUI over Wine. If you also carry a Linux laptop, a cross-platform MIT client avoids three session files. TCP setup for local servers is in How to connect to MySQL on Mac. SSH field mapping for other tools is in MySQL GUI with SSH tunnel.