日期:2014-05-16  浏览次数:20823 次

Install and configure MySQL 5 with MacPorts

Install and configure MySQL 5 with MacPorts

?

?

I decided to move my MySQL server installation from the server I installed from MySQL.com to macports. Why? I believe MacPorts will simplify future upgrades. I'd also like to keep my LAMP installs in the same location. If you haven't already, install and configure MacPorts . Here are the steps I'll go over:

  • Intall MySQL 5
  • Create the initial MySQL databases
  • Options for starting MySQL
  • Confirm that MySQL is running
  • Set Basic MySQL Security

Install MySQL 5

You can install using Porticus, Port Authority, or from the command line:

sudo  port install  mysql5 +server
?

?

The +server variant is required if you'll need to create a system startup item for MySQL 5. You'll see plenty of output during the build process and an activation message just before the installation completes.

Create initial MySQL databases

MySQL databases are kept in /opt/local/var/db/mysql5/ and you'll notice that this directory is empty. Run mysql_install_db to create the mysql and test databases.

sudo  /opt/local/lib/mysql5/bin/mysql_install_db --user=mysql 
?

Password:

You should see output similar to the following:

nstalling MySQL system tables...
OK
Filling help tables...
OK

To start mysqld at boot time you have to copy
support-files/mysql.server to the right place for your system

PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
To do so, start the server, then issue the following commands:

/opt/local/lib/mysql5/bin/mysqladmin -u root password 'new-password'
/opt/local/lib/mysql5/bin/mysqladmin -u root -h MacBook.local password 'new-password'

Alternatively you can run:
/opt/local/lib/mysql5/bin/mysql_secure_installation

which will also give you the option of removing the test
databases and anonymous user created by default.  This is
strongly recommended for production servers.

See the manual for more instructions.

You can start the MySQL daemon with:
cd /opt/local ; /opt/local/lib/mysql5/bin/mysqld_safe &

You can test the MySQL daemon with mysql-test-run.pl
cd /opt/local/mysql-test ; perl mysql-test-run.pl

Please report any problems with the /opt/local/lib/mysql5/bin/mysqlbug script!

The latest information about MySQL is available at http://www.mysql.com/
Support MySQL by buying support/licenses from http://shop.mysql.com/

?

Options for starting MySQL

I personally don't want MySQL to start at system start up, I'll start it manually when I need it. If you're energy conscious and set your Mac to go to sleep you won't want to set mysqld to start at system boot either. If, however, you need MySQL to always start at system boot

sudo launchctl load -w /Library/LaunchDaemons/org.macports.mysql5.plist

sudo  launchctl load -w  /Library/LaunchDaemons/org.macports.mysql5.plist
?

?

Whether you install the startup item or not, it's handy to add aliases to your profile to start and stop mysql from the command line. Use your favorite text editor (vi, pico, emacs) to add aliases.

vi ~/.profile

or

vi ~/.bash_profile

Add the following:

 alias  mysqlstart= 'sudo /opt/local/bin/mysqld_safe5 &'   alias  mysqlstop= '/opt/local/bin/mysqladmin5 -u root