- 更新日: 2014年7月1日
- MySQL & DB
Macローカル開発環境のMySQLソケットの場所を変更
Mac に Homebrew でインストールしている MySQL のソケットの場所を変更しました。Rails での開発で development/test と staging/production の mysql.sock の場所が違っていると、それによるエラーがちょいちょい出るのが面倒くさかったので。
Mac(development/test) → /tmp/mysql.sock
CentOS(staging/production) → /var/lib/mysql/mysql.sock
になっていたので、Mac の development/test 環境の mysql.sock の場所を、CentOS サーバー側と同じ /var/lib/mysql/mysql.sock のパスに揃えることにしました。
以下 Mac で作業。
/var/lib/mysql ディレクトリを作成
1 2 3 |
$ sudo mkdir /var/lib/mysql |
/etc/my.cnf に socket の場所を指定
1 2 3 4 5 6 7 8 |
$ sudo vi /etc/my.cnf [client] socket=/var/lib/mysql/mysql.sock [mysqld] socket=/var/lib/mysql/mysql.sock |
【追記 2014/07/04】
※ [client] の socket 指定を追加しました。詳細エントリーを別途近日中に書きます。
書きました!
MySQLのソケット場所変更、my.cnfでのsocket設定の注意点 | EasyRamble
【追記ここまで】
mysql 再起動。
1 2 3 4 |
$ mysql.server stop $ mysql.server start |
Rails プロジェクトの database.yml 編集
development, test 環境で、/tmp/mysql.sock になっていた箇所を /var/lib/mysql/mysql.sock に修正。
socket: /tmp/mysql.sock
↓
config/database.yml
1 2 3 4 5 |
development: socket: /var/lib/mysql/mysql.sock test: socket: /var/lib/mysql/mysql.sock |
適当にテスト走らせて、以下のような socket 見つかんないよエラーが出なければOK。
1 2 3 |
Can't connect to local MySQL server through socket '/****/mysql.sock' |
- MySQL & DB の関連記事
- MySQLでBLOB/TEXT型のカラムにはデフォルト値を設定できない
- SQLite3でDBテーブルをdumpバックアップ
- Warning: mysql_connect() PHPからMySQL接続でsocketエラー
- phpMyAdminでMySQLをバックアップ(エクスポート)
- MySQLが起動しないエラー(The server quit without updating PID file)
- phpMyAdminで#2002 Cannot log in to the MySQL serverエラー
- libaio.so.1, openssl-devel がなくて mysql-server, mysql-devel をインストールできないエラー
- MySQLオプション(/etc/my.cnf)の設定例
- my.cnf の innodb_data_file_path, innodb_log_file_size 設定で MySQL が起動しなくなる場合の対処
- my.cnfで設定するMySQLオプションで重要そうなのまとめ
Leave Your Message!