Es kann keine Verbindung zum lokalen MySQL-Server über Socket - Fedora hergestellt werden

764
smehsan

Ich bin ein neuer Fedora-Benutzer und installiere ROR auf meinem Computer.

Wenn ich jedoch versuche, den folgenden Befehl einzugeben, werden rake db:createfolgende Fehler angezeigt.

Kann mir jemand bitte sagen, wie ich dieses Problem lösen kann.

[smehsan@localhost proone]$ rake db:create #<Mysql2::Error: Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (13 "Permission denied")> Couldn't create database for {"adapter"=>"mysql2", "encoding"=>"utf8", "pool"=>5, "username"=>"root", "password"=>nil, "socket"=>"/var/run/mysqld/mysqld.sock", "database"=>"proone_development"}, {:charset=>"utf8", :collation=>"utf8_unicode_ci"} (If you set the charset manually, make sure you have a matching collation) #<Mysql2::Error: Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (13 "Permission denied")> Couldn't create database for {"adapter"=>"mysql2", "encoding"=>"utf8", "pool"=>5, "username"=>"root", "password"=>nil, "socket"=>"/var/run/mysqld/mysqld.sock", "database"=>"proone_test"}, {:charset=>"utf8", :collation=>"utf8_unicode_ci"} (If you set the charset manually, make sure you have a matching collation) [smehsan@localhost proone]$ 
0
Hast du die neuesten Fedora-Updates mit allen Updates? In Fedora befindet sich mysqld.sock in `/ var / lib / mysql` und nicht in` / var / run / mysqld`. Es sieht so aus, als hätten Sie mysql2 gem für verschiedene mysql-Header gebaut. Das bedeutet, dass Sie etwas falsch gemacht haben, als Sie Rails, Gems und MySQL-Server installiert haben und diese auf falschen Serverkonfigurationen basieren. Andrew Smith vor 7 Jahren 0
@AndrewSmith Danke. Können Sie mir bitte sagen, wie ich dieses Problem beheben kann? smehsan vor 7 Jahren 0
Nuke das `mysql2` gem und führe` bundle install` erneut aus, um es neu zu erstellen. Wenn dies nicht hilft, schauen Sie sich Ihre MySQL-Serverkonfiguration genau an. Michael Hampton vor 7 Jahren 0

0 Antworten auf die Frage