質問: ### 前提・実現したいこと Macで ruby on railsのアプリをGithubで管理しながら開発していたのですが、windowsのPCでも開発できるように環境を作り始めました。 共同開発できるようになったものの、 /config/database.yml 内の socket: の指定が異なっていたためMac側でwindowsの設定に合わせようとしています。 ### 発生している問題・エラーメッセージ http://easyramble.com/change-mysql-sock-path.html このサイトを参考に/etc/my.cnfに [client] socket=/var/lib/mysql/mysql.sock [mysqld] socket=/var/lib/mysql/mysql.sock この記述を足し、mysql.server startを実行すると ``` エラーメッセージ ERROR! The server quit without updating PID file (/usr/local/var/mysql/Reo-no-MacBook-Air.local.pid). ``` このようなエラーが出ます。 権限が関連しているということで関連箇所の権限も変えたりしましたが、特に改善されることはありませんでした。 ちなみにtail -f /usr/local/var/mysql/Reo-no-Macbook-Air.local.errを実行すると ``` ERROR] Could not create unix socket lock file /var/lib/mysql/mysql.sock.lock. ``` このようなエラーが返ってきます。 検索するとmy.cnfを一回リセットしてからもう一回立ち上げろと言われ、確かに記述をなくすとうまくいきますが、それでは本末転倒なので ### 試したこと ・mysqlの再インストール ・http://stackoverflow.com/questions/21273153/how-to-change-value-returned-by-mysql-config-socket 上記のサイトを参考にmysql_config_editor を実行した際の値を変えようと、 mysql_config_editor -v set --socket=/var/run/mysqld/mysqld.sock このコマンドを実行したが変わらず ### 補足情報(言語/FW/ツール等のバージョンなど) El captain version10.11.2 windows10.1 Rails 5.0.3 which mysql → /usr/local/bin/mysql mysql -v → Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (38)
回答: ソケットファイルを使うと煩雑になるのでしたら、ふつうにTCP接続に切り替えればいいと思います(ローカル環境でちょっとした性能を上げてもあまり意味がないですし)。 MySQLの場合、`127.0.0.1`と書いて接続すればソケットファイルを経由せずに接続できます(Qiita)。