質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Q&A

解決済

2回答

2010閲覧

rails dbをmysqlに変更した結果、複雑なエラーがでました。

Ryo.0613

総合スコア18

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

0グッド

2クリップ

投稿2019/06/16 09:06

前提・実現したいこと

初心者ですので内容が細かくお伝えすることができず、申し訳ございませんが
ご回答頂けますと幸いです。

http://localhost:3000/にアクセスしたところ
エラーメッセージがでてきました。

sqlite3からmysqlに変更しようとしていた試みていたところ
エラーがでるようになりました。

Can't connect to local MySQL server through socket '/tmp/mysql.sock' (38)

urlの通りやっていました。新規db作成でbundle exec rake db:createの
コマンドを入力したら下記のようになり、どうしたらよいかわからない状況です。

Can't connect to local MySQL server through socket '/tmp/mysql.sock' (38)
Couldn't create 'mysql_development' database. Please check your configuration.
rake aborted!
Mysql2::Error::ConnectionError: Can't connect to local MySQL server through socket '/tmp/mysql.sock' (38)
/Users/yr130690/.rbenv/versions/2.5.2/bin/bundle:23:in load' /Users/yr130690/.rbenv/versions/2.5.2/bin/bundle:23:in <main>'
Tasks: TOP => db:create
(See full trace by running task with --trace)

試したこと

mysql.server startを入力してもエラーがでました。
Starting MySQL
... ERROR! The server quit without updating PID file (/usr/local/var/mysql/yamaguchiryounoMacBook-Pro.local.pid).

上記エラーを解決しようとurlを見ながら対応しましたが
解決するに至りませんでした。

補足情報(FW/ツールのバージョンなど)

macを使用しています。
rails newでアプリケーションの作成をこれから行っていこうとしていた矢先の話です。

お力添え頂けますようお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

hatsu

2019/06/16 09:55

/usr/local/var/mysql/yamaguchiryounoMacBook-Pro.local.err あたりにMySQL起動をしようとすると、エラーならばログが吐かれてるかもしれないです。エラーログがあると参考になるので、あれば追記お願いしますmm
Ryo.0613

2019/06/16 11:49

ご返信いただきましてありがとうございます。 下記に記載いたしますのでご確認ください。 yamaguchiryounoMacBook-Pro:event yr130690$ bundle exec rake db:create Can't connect to local MySQL server through socket '/tmp/mysql.sock' (38) Couldn't create 'mysql_development' database. Please check your configuration. rake aborted! Mysql2::Error::ConnectionError: Can't connect to local MySQL server through socket '/tmp/mysql.sock' (38) /Users/yr130690/.rbenv/versions/2.5.2/bin/bundle:23:in `load' /Users/yr130690/.rbenv/versions/2.5.2/bin/bundle:23:in `<main>' Tasks: TOP => db:create (See full trace by running task with --trace) yamaguchiryounoMacBook-Pro:event yr130690$ sudo ls /Applications/MAMP/tmp/mysql/mysql.sock Password: ls: /Applications/MAMP/tmp/mysql/mysql.sock: No such file or directory yamaguchiryounoMacBook-Pro:event yr130690$ sudo touch /Applications/MAMP/tmp/mysql/mysql.sock touch: /Applications/MAMP/tmp/mysql/mysql.sock: No such file or directory yamaguchiryounoMacBook-Pro:event yr130690$ sudo mysql.server start Starting MySQL .Logging to '/usr/local/var/mysql/yamaguchiryounoMacBook-Pro.local.err'. ERROR! The server quit without updating PID file (/usr/local/var/mysql/yamaguchiryounoMacBook-Pro.local.pid). yamaguchiryounoMacBook-Pro:event yr130690$ brew Example usage: brew search [TEXT|/REGEX/] brew info [FORMULA...] brew install FORMULA... brew update brew upgrade [FORMULA...] brew uninstall FORMULA... brew list [FORMULA...] Troubleshooting: brew config brew doctor brew install --verbose --debug FORMULA Contributing: brew create [URL [--no-fetch]] brew edit [FORMULA...] Further help: brew commands brew help [COMMAND] man brew https://docs.brew.sh yamaguchiryounoMacBook-Pro:event yr130690$ mysql.server start Starting MySQL ... ERROR! The server quit without updating PID file (/usr/local/var/mysql/yamaguchiryounoMacBook-Pro.local.pid). yamaguchiryounoMacBook-Pro:event yr130690$ sudo chown -R _mysql:_mysql /usr/local/var/mysql yamaguchiryounoMacBook-Pro:event yr130690$ sudo mysql.server start Starting MySQL ... ERROR! The server quit without updating PID file (/usr/local/var/mysql/yamaguchiryounoMacBook-Pro.local.pid). yamaguchiryounoMacBook-Pro:event yr130690$ mysql ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (38) yamaguchiryounoMacBook-Pro:event yr130690$ ouch /tmp/mysql.sock -bash: ouch: command not found yamaguchiryounoMacBook-Pro:event yr130690$ touch /tmp/mysql.sock touch: /tmp/mysql.sock: Permission denied yamaguchiryounoMacBook-Pro:event yr130690$ sudo rm -rf /usr/local/var/mysql yamaguchiryounoMacBook-Pro:event yr130690$ brew uninstall mysql Uninstalling /usr/local/Cellar/mysql/8.0.16... (275 files, 269.8MB) yamaguchiryounoMacBook-Pro:event yr130690$ brew install mysql Updating Homebrew... ==> Auto-updated Homebrew! Updated 1 tap (homebrew/core).
Ryo.0613

2019/06/16 11:50

字数制限があるか全て投稿できませんでした。 その他、必要情報があればご教示ください。 この他にもいろいろ試しましたので。。。。
guest

回答2

0

ベストアンサー

ログを見るとおそらくMySQLをuninstallしてたりもすると思うので、よくある解決方法を列挙します。
逐一、MySQLのエラーログをみておくと良いです!

  1. sudo touch /tmp/mysql.sock database.ymlのsocketの所に書いてあるpathにmysql.sockを作成します

  2. mysql.server startでMySQLを起動します。

  3. ERROR! The server quit without updating PID fileって言われたら、

ps -ef | grep mysqlで起動しているMySQLがある場合は、kill -Q pidをしてください。
そして、ls -l /usr/local/var/mysql/yamaguchiryounoMacBook-Pro.local.pidで存在と所有者を確認します。なければ、作ってください(削除して作るのも上手くいくかも...?)。

  1. Unable to setup unix socket lock file.と言われたら、
➤ ls /tmp/ | grep mysql mysql.sock mysql.sock.lock

みたいなことが多いので、mysql.sock.lockを削除してください。

投稿2019/06/16 13:44

hatsu

総合スコア1809

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Ryo.0613

2019/06/17 12:07

ご回答頂きましてありがとうございます。 mysql.server startで取り急ぎ Starting MySQL SUCCESS! できました。ありがとうございます。
guest

0

MySQLのソケットファイルが /tmp/mysql.sock にできているかどうかまずみてください
ls /tmp/myswl.sock

多分無いです。
ソケットはMySQLをcompileするときの設定で変わります。
macがどいう設定でcompileしているか分からないのでダイレクトな助言が出来ないです。
mac mysql socket 辺りでgoogleするか

sudo find /tmp /var -name "mysql"
辺りで中を探って見て下さい

投稿2019/06/16 11:54

winterboum

総合スコア23329

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Ryo.0613

2019/06/17 12:08

ご回答頂きありがとうございます。 mysqlにログインすることができました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問