Installing MariaDB Server PKG packages on macOS

You are viewing an old version of this article. View the current version here.
MariaDB starting with 10.2.5

Starting with MariaDB 10.2.5, a .pkg installer for macOS is available from http://mariadb.com/downloads

The .pkg installer installs MariaDB Server and, optionally, a launchd service definition to allow the OS to automatically start and manage MariaDB Server.

Installer behavior

The installer installs MariaDB Server in a subdirectory of /usr/local, and it creates a "mariadb" symlink in /usr/local. If there is an existing file or directory named "mariadb", it's moved to have an integer suffix (like mariadb.1 for example).

If there's an existing service listening on port 3306, the installer will create /usr/local/mariadb/my.cnf with skip-networking. You can edit this file to set an alternate port for MariaDB Server to listen on, or you can remove skip-networking if you have disabled the daemon that had bound port 3306.

MariaDB Server will place its socket file at /usr/local/mariadb/data/mariadb.sock and the client tools included in the package will by default look for a socket file at that location.

After installation, your MariaDB Server instance will have a "root" user account and a user account named after the username of the user who ran the installer. Both of these accounts use the UNIX_SOCKET Authentication Plugin, which means no password is required to log in.

To log in to MariaDB as root, you will need to become root on the OS; the preferred mechanism for this is to use sudo, like this:

sudo /usr/local/mariadb/server/bin/mariadb

If you want to be able to connect to MariaDB Server using TCP, you will need to create a new user and give it a password.

The daemon's executable is mariadbd, not mysqld. You should take this into account if you have scripts, tools, or workflows that look for processes named "mysqld". You can also invoke mysqld to start the server; edit /Library/LaunchDaemons/com.mariadb.server.plist if you want to do that permanently.

launchd behavior

The installer can install a launchd service configuration. This is optional, but it is enabled by default.

The service definition causes launchd to automatically start MariaDB Server after installation and when the OS boots.

The launchd service configuration file installed by the installer is located at /Library/LaunchDaemons/com.mariadb.server.plist. The service definition file uses command-line arguments to mariadbd to control some of its behavior. These will override changes you make in option (.cnf) files.

To stop MariaDB Server using launchd, execute launchctl stop com.mariadb.server.

To start MariaDB Server using launchd, execute launchctl start com.mariadb.server.

Uninstalling MariaDB Server

To remove MariaDB Server, follow these steps:

First, stop MariaDB Server and remove the files associated with launchd support, if you installed it:

  • launchctl stop com.mariadb.server
  • launchctl unload /Library/LaunchDaemons/com.mariadb.server.plist
  • rm /Library/LaunchDaemons/com.mariadb.server.plist /usr/local/mariadb/server
  • pkgutil --forget com.mariadb.mariadb-server-launchd

Files to consider removing include these:

  • /usr/local/mariadb/mariadb-10.2.6-osx10.12-x86_64/ (the basedir of the distribution, the name of which will vary depending on the version installed)
  • /usr/local/mariadb/server (a symlink to the basedir of the MariaDB Server distribution)
  • /usr/local/mariadb/etc/ (a directory to hold .cnf files)
  • /usr/local/mariadb/data/ (the datadir that holds your MariaDB data).

You can also consult the output of pkgutil --files com.mariadb.mariadb-server-files to see the specific list of files installed by the package.

After removing the files you wish to remove, tell pkgutil to forget the MariaDB Server package:

pkgutil --forget com.mariadb.mariadb-server-files

Comments

Comments loading...
Content reproduced on this site is the property of its respective owners, and this content is not reviewed in advance by MariaDB. The views, information and opinions expressed by this content do not necessarily represent those of MariaDB or any other party.