`
purpen
  • 浏览: 796952 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Installing MySQL on Mac OS X

阅读更多

Setting Up
I like to create a folder to contain the MySQL source code file and build folder. This way, I can later uninstall MySQL easily, as well as download and compile new versions, all in one place.

For these examples, we’ll create a folder called src in our home folder, and change directories into that folder. It will be our workspace for everything we do here:

写道
mkdir -p ~/src
cd ~/src
 


You’ll download and compile everything in this new folder.

Download, Extract, Etc.
Now we’re ready to start the real work. Just type (or cut-n-paste) each one of the following lines into Terminal, one by one. When one line finishes (some will take a while and dump a lot of information to the screen), enter the next one.

This will first download and then expand the MySQL source code distribution:

写道
curl -O http://mysql.he.net/Downloads/MySQL-5.1/mysql-5.1.31.tar.gz
tar xzvf mysql-5.1.31.tar.gz
cd mysql-5.1.31
 


You then need to configure MySQL:

写道
CC=gcc CFLAGS="-O3 -fno-omit-frame-pointer" CXX=gcc \
CXXFLAGS="-O3 -fno-omit-frame-pointer -felide-constructors \
-fno-exceptions -fno-rtti" \
./configure --prefix=/usr/local/mysql \
--with-extra-charsets=complex --enable-thread-safe-client \
--enable-local-infile --enable-shared --with-plugins=innobase
 


When that process completes, you can initiate the actual compilation process:

 

写道
make
 


This part can take a while. Now is a good time to go and get yourself a tasty beverage.

The last part of the build process is where MySQL actually gets installed. You’ll be prompted for your password here, because this is where files actually get written to their actual locations:

写道
sudo make install
 


Next, we need to setup the initial databases and privileges. You may be prompted for your password again:

写道
cd /usr/local/mysql
sudo ./bin/mysql_install_db --user=mysql
sudo chown -R mysql ./var
 


That’s it, MySQL is installed. But you’re not done yet.

Auto-Starting MySQL
Now that the install is done, you need to have MySQL auto-start every time you start or reboot your Mac. The easiest way to do this is using launchd.

I’ve prepared a launchd plist file that will manage MySQL, starting it at boot and stopping it cleanly at shutdown. Create a file named com.mysql.mysqld.plist using the text-editor of your choice, and save it to your Desktop. Enter the following text into the file:

写道
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>KeepAlive</key>
<true/>
<key>Label</key>
<string>com.mysql.mysqld</string>
<key>Program</key>
<string>/usr/local/mysql/bin/mysqld_safe</string>
<key>RunAtLoad</key>
<true/>
<key>UserName</key>
<string>mysql</string>
<key>WorkingDirectory</key>
<string>/usr/local/mysql</string>
</dict>
</plist>
 

 

Now we need to move the file into place and set the permissions on it. You may be prompted for your password again:

写道
sudo mv ~/Desktop/com.mysql.mysqld.plist /Library/LaunchDaemons
sudo chown root /Library/LaunchDaemons/com.mysql.mysqld.plist
 


With the file in place, the last step is to tell launchd to load and startup MySQL. You may be prompted for your password again:

写道
sudo launchctl load -w /Library/LaunchDaemons/com.mysql.mysqld.plist
 


If things go well, you won’t see anything special happen, but MySQL will have started up. You can verify this, again back in Terminal:

写道
mysql -uroot
 


This will initiate MySQL’s command-line monitor. If everything went well, you should see something like this:

写道
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.0.45 Source distribution
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql>
 


If you see that, that’s it, you’re done! Type exit to quit the MySQL monitor.

If you see something else, verify that your paths are set correctly and try the command again. If things still don’t work, it’s likely that something didn’t work and the compile didn’t finish. Try going through the steps once more and see if you can catch any error messages.

Starting and Stopping MySQL Manually

If you ever want to stop MySQL manually, use this command in Terminal, entering you password when prompted:

sudo launchctl unload -w /Library/LaunchDaemons/com.mysql.mysqld.plist
To start it manually, use this command in Terminal, entering you password when prompted:

sudo launchctl load -w /Library/LaunchDaemons/com.mysql.mysqld.plist
A Note about Security
The easiest way to secure your MySQL installation without affecting the way you (or your applications) will need to communicate with it is to limit anything but local connections to your MySQL server. In other words, only you and the apps you run on your own Mac will be able to connect. You won’t need to enter passwords when interacting with MySQL locally, and won’t need to tweak the default database.yml files that Rails creates, for example.

We can limit access by creating (or editing) the /etc/my.cnf file. If you have TextMate installed, you can enter the following command to create (or edit) the file:

写道
mate /etc/my.cnf
 


If you use BBEdit, you’d use this command:

写道
bbedit /etc/my.cnf
 


The handy bit about using TextMate (or BBEdit) for this task is that it will handle authentication and setting permissions for you.

Enter the following text into the file save it and close it, authenticating as needed:

写道
[mysqld]
bind-address = 127.0.0.1
 


Thanks to my friend Mike Clark for this tip.

If limiting access isn’t enough for you, you can read about setting a root access password for MySQL in this article.

Baking-In the MySQL Bindings
You can gain some bigtime Rails-to-MySQL speed improvements by building the MySQL C bindings for Ruby.

If you have an Intel Mac, just run the following command (entering your password when prompted):

sudo env ARCHFLAGS="-arch i386" gem install mysql -- --with-mysql-config=/usr/local/mysql/bin/mysql_config
If you have a PPC Mac (I hear some still exist), you’d enter:

sudo env ARCHFLAGS="-arch ppc" gem install mysql -- --with-mysql-config=/usr/local/mysql/bin/mysql_config
You’ll see a prompt asking you which gem to install:

Select which gem to install for your platform (universal-darwin9.0)
 1. mysql 2.7.3 (mswin32)
 2. mysql 2.7.1 (mswin32)
 3. mysql 2.7 (ruby)
 4. mysql 2.6 (ruby)
 5. Skip this gem
 6. Cancel installation
Pick the option closest to the top that ends in “(ruby)”. In the example above, we’d want to select option 3.

Uninstalling MySQL
In case you one day decide that you’d like to remove MySQL, it’s easy to do when building from source:

写道
cd ~/src/mysql-5.0.45
sudo make uninstall
sudo launchctl unload -w /Library/LaunchDaemons/com.mysql.mysqld.plist
sudo rm /Library/LaunchDaemons/com.mysql.mysqld.plist
 

 

FAQ :

我安装成功调用:mysqld_safe启动时,报以下错误:

 

090312 15:57:14 [Warning] Setting lower_case_table_names=2 because file system for /usr/local/webserver/mysql/var/ is case insensitive
090312 15:57:14 [ERROR] /usr/local/webserver/mysql/libexec/mysqld: unknown option '--skip-federated'
090312 15:57:14 [ERROR] Aborting

 

于是,我找到my.cnf, 注释了--skip-federated,就一切ok了。

#--skip-federated
分享到:
评论

相关推荐

    MySQL V5.5帮助文档

    2.4.1. General Notes on Installing MySQL on Mac OS X 2.4.2. Installing MySQL on Mac OS X Using Native Packages 2.4.3. Installing the MySQL Startup Item 2.4.4. Installing and Using the MySQL Preference...

    mysql安装配置教程 - Installing MySQL 5.7 on Windows for Specify

    ### MySQL 5.7在Windows系统上的安装与配置教程 #### 概述 MySQL是由Oracle公司维护的一个开源的关系型数据库管理系统。它以其性能稳定、功能强大而被广泛应用于各种应用场景中。本文档主要介绍了如何在Windows...

    MySQL 5.6 Reference Manual

    Table of Contents Preface, Notes, Licenses . . . . . . . . ....1. Licenses for Third-Party Components ....1.1. FindGTest.cmake License ....1.2. LPeg Library License ....1.3. LuaFileSystem Library License ....

    HoRNDIS-9.2.pkg 黑苹果--安卓USB共享网络给Mac10.14 版本可以

    It is known to work with Mac OS X versions 10.6.8 (Snow Leopard) through 10.14 (Mojave – see notes below), and has been tested on a wide variety of phones. Although you should be careful with all ...

    MySQL Bible.rar

    installing and configuring MySQL on the Linux, Windows 2000, and Mac OS X operating systems; MySQL security; debugging and repairing MySQL databases and servers; MySQL performance tuning; and ...

    Mysql-Installing.zip_MYSQL_MySQL安装_mysql Tutorial_mysql 教程

    MySQL是世界上最受欢迎的开源数据库...本教程的"Mysql Installing.pdf"文件应该包含了这些步骤的详细指南,对于初学者来说是一份宝贵的资源。通过跟随教程,您将能够顺利安装MySQL,并开始探索这个强大的数据库世界。

    MySQL - Installing and Starting MySQL

    ### MySQL安装与启动详解 #### 一、MySQL简介 MySQL是全球最受欢迎的开源数据库系统之一。尽管它功能强大,但其设置过程简单易懂。本文将详细介绍如何在不同平台上安装和启动MySQL,并介绍如何通过`mysql`客户端...

    《PHP &amp; MySQL: Novice to Ninja, 6th Edition》- 2017 英文原版

    Install PHP & MySQL on Windows, Mac OS X, or Linux Gain a thorough understanding of PHP syntax Master database design principles Write robust, maintainable, best practice code Build a working content ...

    《PHP & MySQL: Novice to Ninja, 6th Edition》2017 英文原版 Kindle - mobi格式

    Install PHP & MySQL on Windows, Mac OS X, or Linux Gain a thorough understanding of PHP syntax Master database design principles Write robust, maintainable, best practice code Build a working content ...

    fiddler-mac.zip

    Currently (at mono version 4.2.4) this store remains empty after installing Mono on Mac OS X. Fiddler uses the certificates in this store to validate the certificates of the websites visited. So you ...

    安装mysql-connector-odbc前提必须微软组件

    Error installing ODBC driver MySQL ODBC5.3 ANSI Driver,ODBC error 13:无法加载 MySQL ODBC5.3 ANSI Driver ODBC驱动程序的安装例程, 因为存在系统错误代码 126:找不到指定的模块。 解决方案:如果电脑是...

    Installing RAC on AIX

    本篇将基于提供的文档摘要,深入解析安装Oracle RAC on AIX的关键步骤与注意事项,为读者提供一份详尽的操作指南。 ### 安装准备阶段 #### 1. 下载并解压安装介质 首先,需要从Oracle官方网站的edelivery服务下载...

    Microsoft Windows 2000 Scripting Guide - Installing Software on a Remote Computer

    Microsoft Windows 2000 Scripting Guide - Installing Software on a Remote Computer

    MySQL Administrator

    MySQL Administrator支持在Windows、Linux和Mac OS X操作系统上运行。 #### 3.2. Installing Under Windows 在Windows环境下,有两种安装方式: - **使用Windows Installer**:下载安装程序后,双击运行,按照...

    Installing Your Driver on Windows Millennium

    Installing Your Driver on Windows Millennium INF File Guide

    Installing MIUI on Meizu MX2

    在IT领域,将一款设备刷入不同的操作系统或定制ROM是一种常见的技术操作,它允许用户根据个人喜好和需求自定义手机的界面与功能。本篇内容将深入解析如何在魅族MX2上安装MIUI系统,这是一项对于Android发烧友而言极...

    \Installing RAC on AIX 001.pdf

    根据提供的文档信息,本文将详细解析安装 Oracle RAC (Real Application Clusters) 在 AIX 操作系统上的步骤、注意事项及关键技术点。 ### 安装前准备 #### 下载安装介质与补丁集 ... - 示例文件包括:`B24442-01_1...

Global site tag (gtag.js) - Google Analytics