分からんこと多すぎ

何故か就職できたので技術磨く。一人前の多重線形代数使いを目指しつつ、機械学習、データマイニングをやる

MacOSX10.6.8(snow leopard)でMySQLサーバを立てる

いつも通りhomebrewで作る
参考はこちら。
HomebrewでMySQLをインストールする時に知っておきたいこと | Macとかの雑記帳
HomebrewでMySQL 5.6をインストール。開発用my.cnfもさらす | karakaram-blog
快速MySQLでデータベースアプリ!(3):コマンドによるMySQL管理テクニック (1/2) - @IT
» brewでmysqlをインストール



  1. homebrewでmysqlをインストール

    brew install mysql

    出力結果の一部に

    Set up databases to run AS YOUR USER ACCOUNT with:
        unset TMPDIR
        mysql_install_db --verbose --user=`whoami` --basedir="$(brew --prefix mysql)" --datadir=/usr/local/var/mysql --tmpdir=/tmp

    と書いてあるので、次で実行する


  2. mysqlのユーザ設定をする

    unset TMPDIR
    mysql_install_db --verbose --user=`whoami` --basedir="$(brew --prefix mysql)" --datadir=/usr/local/var/mysql --tmpdir=/tmp


  3. 起動スクリプトの設定

    cp /usr/local/Cellar/mysql/5.5.19/homebrew.mxcl.mysql.plist ~/Library/LaunchAgents/

    homebrew.mxcl.mysql.plistを以下のように書き換え。

    <?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>homebrew.mxcl.mysql</string>
            <key>Program</key>
            <string>/usr/local/bin/mysql_safe</string>
            <key>RunAtLoad</key>
            <true/>
            <key>WorkingDirectory</key>
            <string>/usr/local/var</string>
    </dict>
    </plist>

    以下で読み込み

    launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist

  4. mysqlサーバーの起動

    mysql.server start
    mysql

    mysqlの中に入れたらOK

  5. mysql文字コードを確認
    mysqlの中で以下を実行

    show variables like 'character_set%';
    

    以下のように表示される。
    バージョンが古いmysqlだとutf-8ではないらしい。
    環境によってはutf-8じゃないと文字化けするので設定しておくこと。

    +--------------------------+------------------------------------------------------+
    | Variable_name            | Value                                                |
    +--------------------------+------------------------------------------------------+
    | character_set_client     | utf8                                                 |
    | character_set_connection | utf8                                                 |
    | character_set_database   | utf8                                                 |
    | character_set_filesystem | binary                                               |
    | character_set_results    | utf8                                                 |
    | character_set_server     | utf8                                                 |
    | character_set_system     | utf8                                                 |
    | character_sets_dir       | /usr/local/Cellar/mysql/5.6.10/share/mysql/charsets/ |
    +--------------------------+------------------------------------------------------+
    8 rows in set (0.00 sec)
    

  6. my.cnfでmysqlの設定を変更する
    以下のシェルコマンドを実行する

    mysql --help | grep my.cnf

    するとこのように表示される。

    /etc/my.cnf /etc/mysql/my.cnf /usr/local/etc/my.cnf ~/.my.cnf

    これは設定ファイルmy.cnfの優先順位を示しているらしい。
    とりあえず/usr/local/etc/my.cnfを作って、適当に文字コードの設定を記述してみる。

    [mysqld]
    character-set-server = utf8
    [mysql]
    default-character-set = utf8