はじめに
macにもmysqlはいってるといざってときにいろいろ試せて便利ですよね。
ネットワークつながってなくても試せたりもしますし。
ってなわけでhomebrewを使ってmacにmysqlを入れて試しに使ってみるまでのメモです。
最後は消すとこもおまけ程度に。
ながれ
最後は一応きれに消しますw
1. homebrewいれる
こちらは以前書いた記事があるので割愛します。
→Mac OS XにHomebrewインストール。command line developer tools入れたり使い方メモったり(install、update、upgradeなど)
2. mysqlインストール
この記事としてはここからが本番ですね。
※ いちおうbrewのバージョン晒す # brew -v Homebrew 0.9.5 ※ brewもupdateしておく # brew update ※ brewでインストールする場合のオプションを確認 # brew options mysql --enable-debug Build with debug support --enable-local-infile Build with local infile loading support --enable-memcached Enable innodb-memcached support --universal Build a universal binary --with-archive-storage-engine Compile with the ARCHIVE storage engine enabled --with-blackhole-storage-engine Compile with the BLACKHOLE storage engine enabled --with-embedded Build the embedded server --with-tests Build with unit tests ※ インストール # brew install mysql ==> Installing mysql dependency: openssl ==> Downloading https://downloads.sf.net/project/machomebrew/Bottles/openssl-1.0.1j.mavericks.bottle.tar.gz ・・・省略・・・ ==> Pouring mysql-5.6.21.mavericks.bottle.tar.gz ==> Caveats A "/etc/my.cnf" from another install may interfere with a Homebrew-built server starting up correctly. To connect: mysql -uroot To have launchd start mysql at login: ln -sfv /usr/local/opt/mysql/*.plist ~/Library/LaunchAgents Then to load mysql now: launchctl load ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist Or, if you don't want/need launchctl, you can just run: mysql.server start ==> /usr/local/Cellar/mysql/5.6.21/bin/mysql_install_db --verbose --user=hoge --basedir=/usr/local/Cellar/mysql/5.6.21 --datadir=/usr/local/var/mysql --tmpdir=/tmp ==> Summary 🍺 /usr/local/Cellar/mysql/5.6.21: 9621 files, 339M
インストールはこれで終わりです。
brew updateやらオプション確認やらしなければ最後の1コマンドだけです。簡単ですね。
また、==> Caveats
(手続き)以下の行に
こんな感じではじめてね的なことが書いてあるのでそのままやってみても良いかもです。
後で見たい感じはこんな感じで打つとまた見れます
# brew info mysql
確認
一応ちゃんとはいったかは確認します
# mysql --version mysql Ver 14.14 Distrib 5.6.21, for osx10.9 (x86_64) using EditLine wrapper
3. mysql設定
インストールは終わったのでいくつか設定します。 主に設定するのは以下
起動確認
こちらは起動してみて入ってみるという確認だけです。
そもそも起動もできない入れない場合はいったん削除して入れるとこからやり直した方がいいかもですね。
※ 起動する # mysql.server start ※ 入ってみる # mysql -u root -p Enter password: ←パスワードは設定してないので何も打たずEnter ※ 出る mysql>exit Bye ※ 停止する # mysql.server stop
データディレクトリ初期化スクリプト(mysql_install_db)の実行
mysql_install_dbスクリプトにオプションをつけて実行します。
オプションは後述します。
# unset TMPDIR # mysql_install_db --verbose --user=`whoami` --basedir="$(brew --prefix mysql)" --datadir=/usr/local/var/mysql --tmpdir=/tmp
オプションについて
オプション | 説明 |
---|---|
--verbose | プログラム実行に関する情報を出力する(冗長モード) |
--user | mysqldを実行するときのログインユーザ名の指定 このユーザで、mysqldで作成するファイルやディレクトリの操作を行う |
--basedir | MySQLをインストールしているディレクトリを指定 |
--datadir | データディレクトリへのパスを指定 |
--tmpdir | 一時ディレクトリ。socketファイルなどが置かれる |
補足
- --user=`whoami`
--user=`whoami`はバッククオートでコマンドの結果を使ってますが、
もちろん--user=usernameみたいな文字列指定でも大丈夫です
参考
mysql_install_dbのオプションについてはこちらを参考にさせて頂きました
→【MySQL】mysql_install_db オプション
ERROR 2002 (HY000)エラーが出る場合
セキュリティ設定スクリプト(mysql_secure_installation)の実行
データディレクトリの次はセキュリティ設定です。
yesかnoが聞かれますが下記の設定をするかどうかなのでとりあえず全部yesでいきます
- root パスワードの設定
- root ユーザーのログインを localhost に制限
- anonymous ユーザーの削除
- test データベースの削除
おもむろに叩くだけです。
# mysql_secure_installation ※ 主に聞かれる質問は以下 Set root password? [Y/n] Y Remove anonymous users? [Y/n] Y Disallow root login remotely? [Y/n] Y Remove test database and access to it? [Y/n] Y Reload privilege tables now? [Y/n] Y
設定ファイル(my.cnf)の編集・設置
my.cnfを設置します。インストール先にあった場所に置きましょう。
# mysql --help | grep .cnf order of preference, my.cnf, $MYSQL_TCP_PORT, /etc/my.cnf /etc/mysql/my.cnf /usr/local/etc/my.cnf ~/.my.cnf ※ この中から今回は/usr/local/etc/my.cnfにmy.cnfつくる # sudo vi /usr/local/etc/my.cnf ---- vi追記 ---- [mysqld] character-set-server=utf8 [mysqldump] default-character-set=utf8 [mysql] default-character-set=utf8 --------------- ※ 設定したら再起動 # mysql.server stop # mysql.server start
補足
もーちょいちゃんとした設定、とはいえお試し用で、
みたいな方は下記のサイトが参考になりました。
→HomebrewでMySQL 5.6をインストール。開発用my.cnfもさらす
4. mysqlアンインストール
いれたばかりですが消しますw
消したいときもありますしね。また、後で書くつもりですがバージョン変えていれたいときもあるでしょう。
※ 一応停止しておく # mysql.server stop ※ homebrew経由でアンインストール # brew uninstall mysql # brew cleanup ※ 余計なファイル類の削除 # sudo rm -rf /usr/local/var/mysql
まとめ
HomeBrew使っての通常インストールについてメモりました。
mysqlがためしたいときも、プログラムからmysqlにつないで試したいときも
なんだかんだでオフラインでも試せる環境があるといいですよね!