Apple recently phased out MySQL in favor of PostgreSQL. There are still valid reasons why we might prefer MySQL, such as compatibility with legacy code.
The macOS Mojave 10.14.1 update improves the stability, compatibility and security of your Mac, and is recommended for all users. This update: Adds support for Group FaceTime video and audio calls, which support up to 32 participants simultaneously, are encrypted end-to-end for privacy, and can be initiated from a group Messages conversation, or joined at any time during an active call. MacOS Big Sur supports most Mac models introduced in 2013 and later. View compatible Mac models. Before you upgrade, make a complete backup with Time.
Here are my instructions on how to install MySQL as a permanent service on OS X. These instructions work with or without OS X Server installed. For the most part, installation is straightforward, but read this carefully because there are gotchas where it comes to file permissions.
I’ve tested these instructions several times on OS X 10.11 El Capitan and 10.10 Yosemite. I think these instructions will probably work on 10.8 Mountain Lion and 10.9 Mavericks.
Backup your MySQL databases.
You want to back up your MySQL databases before doing a OS X upgrade. The easiest way is to create a mysqldump file. Databases can also be restored from data files, but this is harder and I don’t recommend it.
Install or upgrade OS X.
According to your plan.
Download Xcode from the App store and install the command line tools.
Xcode is a dependency for Homebrew, which uses Xcode’s gcc
compiler to compile everything from source. Once you have Xcode installed, you need to install the command line tools for the gcc
compiler to work. From Terminal:
Check the systemwide PATH
variable.
Open a Terminal window:
Make sure that /usr/local/bin
occurs before /usr/bin.
If they don’t, then you need to change this order. Edit /etc/paths
using vi
or your favorite text editor. I love and use TextWrangler. Close your Terminal window and open a new Terminal window for this change to take effect.
Obtain Homebrew.
Maracas Mazes Mac Os Catalina
Homebrew is a great package manager for OS X that installs everything in /usr/local/bin
and does not require sudo.
It then symlinks to the expected locations so that the packages can find one another. Because the packages are centralized in the Cellar, they are easily updated and removed.
Fix any problems that Homebrew detects.
Follow brew doctor
‘s instructions. brew doctor
usually complains about Xcode. If I’m guessing the error correctly, here is the solution that brew doctor will suggest (assuming OS X 10.10 – note the version since this affects what you will type into Terminal):
Run brew doctor
again. Continue to follow brew doctor
‘s instructions until it tells you that “Your system is ready to brew.”
Install MySQL.
Homebrew has just installed MySQL to run under the current user, which is not what we want for our server, but we will get to that in a moment. First, we will test the mysqld
service to see if it launches. In newer versions of MySQL, the command to launch the service is $ mysql.server start
.
Modify the .plist file to improve logging.
Using vi
or your favorite text editor, modify the .plist file.
Add these lines within the <dict>
block:
Set up the MySQL service to launch at boot time as part of a server.
Homebrew’s instructions, which I asked you to ignore, would have installed a LaunchAgent for your current user account, so that the mysqld
service would start whenever you logged in. This would work great for a personal development machine, but it’s not not ideal for a server.
For a server, what we want is for mysqld
to start up at boot time by the root
account. So, we need to make two changes:
- the .plist must link into
/Library/LaunchDaemons
and have the appropriate permissions to be launched byroot
. - the mysql database files in
/usr/local/var/mysql
must all be owned by_mysql
. You might wonder why the owner must be_mysql
, since the server starts up asroot
. This is because whenevermysqld
detects that it is being run asroot
, the process steps down to user_mysql
as a security measure. This is typical behavior for services. Apache, for example, steps down to user_www
.
Open a Terminal window, and enter:
Important: Now that mysql belongs to root
, do not run the $ mysql.server
command again! Don’t do it. This will result in an aborted launch with permissions errors. You will need to delete the resulting .pid files in /usr/local/var/mysql
before mysqld
will be able to run again, even as root
. Again, don’t do it.
Verify that the MySQL service starts up at boot time.
Maracas Mazes Mac Os Download
We will reboot the server machine. At boot time, launchctl should load our modified .plist and run mysqld
. We will then run the mysql
command from Terminal to interface with the mysqld
service and verify that it’s running.
After the machine restarts, re-enter Terminal and type:
If the mysql
command fails, then we know that either the LaunchDaemon didn’t kick in, or that mysqld
failed to start successfully. Again, if this happens it is usually because of a permissions issue. To troubleshoot, check the log files at:
Restore your MySQL databases.
A full dump from a recent version of MySQL should successfully restore all databases plus the privilege table, which controls users. If there are problems with the privilege table after restoring, then edit out the privilege table from your mysql dump file, and re-create your users manually using a tool like phpmyadmin
.
I hope this post helped someone. Happy monkeying!
Also found in: Dictionary, Medical, Acronyms, Wikipedia.
macOS
The name of Apple's Unix-based operating system for Mac desktop and laptop computers. macOS is a continuation of the Mac OS X operating system, which was rebranded as macOS starting with the Sierra version in 2016.Maracas Mazes Mac Os X
Since its introduction in 1984, the Mac operating system has had five brand names (see below) and was designed to work with four hardware lines: Motorola, PowerPC, Intel and ARM. See Motorola, PowerPC, Intel Mac, ARM Mac, macOS server and Mac computer.Name Evolution
The Mac originally used 'System' designations for its operating system, which then became 'Mac OS.' Starting in 1999, Mac OS X was a major upgrade that was branded with animal names followed by places in California (see Mac OS X).
Long Live the Mac Operating System |
---|
Introduced in 1999, Mac OS 8.6 was the first time the version number appeared on the Mac startup screen. Two years before, Mac OS 8.0 was the largest update to the Mac operating system since System 7. |
Want to thank TFD for its existence? Tell a friend about us, add a link to this page, or visit the webmaster's page for free fun content.
Link to this page: