On occasion, my local Rails app loses its connection to MySQL. I get some error that the connection failed, but if I just refresh the page, it works fine. This has never happpened in my STAGE or PROD environments (I deploy to Ubuntu), so it has not been that big a deal.
Does this happen to anybody else? Is there something I can do to fix it? Is it MySQL or Ruby?
Look like the best solution to this is to install the platform specific mysql driver. sudo gem install mysql
I remember having this problem a while back (before i upgraded to Leopard?). They're tricky to diagnose, but have a look at logfiles, and try setting "wait_timeout" longer (you shouldn't have to mess with "max_connections". See:
http://www.mysqlperformanceblog.com/2008/08/23/how-to-track-down-the-source-of-aborted_connects/
http://dev.mysql.com/doc/refman/5.0/en/communication-errors.html
http://www.softwareprojects.com/resources/programming/t-how-to-fix-mysql-database-myisam-innodb-1634.html
I think i followed Dan Benjamin's MySql install blog to not have problems:
http://hivelogic.com/articles/installing-mysql-on-mac-os-x/
Related
I just installed Laragon but when it wants to start its services, it "freezes" when mySQL have to be launched, then shows me that message :
mysqld.exe - Application Error
This application was unable to start correctly (0xc000007b). Click OK to close the application.
After that, Laragon's window writes "initialize data..." then does not change until I stop all services.
I wanted to check the log files but... zero log. So impossible to have some details...
I've tried to uninstall and reinstall.
I've tried another version of mySQL.
None of them works. WAMP is also installed on my computer, but I don't really want to uninstall it (and I don't think that's problem since I have both at work).
I think MySQL 5.7 is not compatible with your OS.
You can try two options:
Copy your MySQL in WAMP to laragon\bin\mysql\
Use MariaDB
I am a a newbie to database programming and I want to try out MySQL.
I just installed MySQL from the official website, I am running mac 10.8.2.
Anyways, whenever I try to run a simple command like $>mysql.server start
it says Permission denied.
I am able to open it through sudo but I would love to get this fixed as this is annoying me, that it wont work properly. I have been searching for the last two hours without finding a fix, so I was hoping anyone could give me a helping hand.
The easiest way is to install the MySQL Startup Item. Then you get a Preference pane for MySQL.
See http://dev.mysql.com/doc/refman/5.5/en/macosx-installation-startupitem.html for full instructions.
Re your comment:
It's often required for services like mysql.server need to run as a uid other than your user login. For instance, the MySQL data directory may only be writeable by the mysql uid. So starting such a service must be done from a user that can change the uid of the process. The root uid can do that, so it's necessary to use sudo to launch service processes like mysql.server.
TL;DR: YOU HAVE TO USE SUDO.
If you a absolute newbie to MYSQL and you just want to use the MYSQL server to test your code on you local MAC I would advice you to take a look at XAMPP / MAMP. Xampp offers a complete out of the box install for everything you need for a development servers (Apache server, MySQL, PHP, etc). Note, that I XAMPP / MAMP is not suitable for production server setting.
I personally use the XAMPP Windows version. I haven't tried MAMP but I have come across it many times . The XAMPP for Mac version seem not to have been update for a while so I suggest you give MAMP a try.
You could of course try to get your current install to work but that might require some work. Also with regard to firewall / security issues. With the out of the box version you will have to do a lot less. Why reinvent the wheel if you can easily install a out of the box version.
I recently upgraded to Mountain Lion from Snow Leopard, and in doing so threw my entire local development environment into disarray. I solved the majority of my issues by finally installing MAMP Pro (I was previously using the "native" methods provided by Apple). The problem I have now is I still can't access my old mysql databases. I can view the "new" databases via phpmyadmin in MAMP, but I have old projects that I'd like to work on.
My old databases still exist in /usr/local/mysql/data, but they don't appear in phpmyadmin or even if I query via Terminal (after logging in to mysql & using the show databases; command). I'm sure the answer involves just a few simple commands, but I'm mainly a front-end guy, and I can't for the life of me find the solution on the internets.
Thanks.
UPDATE:
Just a reference for anyone else who might have this issue (or something similar). In order to do the dump, I ended up having to turn off MAMP's instance of MySQL, and starting up the old version (through System Preferences). Otherwise I was getting 1049 errors ("unknown database"), I suppose since it was looking at the new databases instead? Really out of my element here, if you can't tell...
Either way, now it looks like it actually doesn't matter if the MAMP version is active or not. Maybe I just needed to restart all instances of MySQL? Seriously, no clue, but all is good now...
Try this in terminal to dump old databases (replacing [text]):
/usr/local/mysql/bin/mysqldump -u root -p[pass] [db] > [filename].sql
Once you have the sql file you can import it back in with PHPMyAdmin within MAMP.
I'm getting kind of desperate here trying to get mysql to work on osx lion.
I've been through nearly every article on the web these past few days looking for a way to fix the problem with the error.
When I try to start the server is gives this error:
Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
when I try to create a database with 'rake db:create' it gives the same error.
sometimes it says that or I get errors about "please install gem-blabhalbhabhlb". And that gem doesn't exist.
I was able to install mysql in terminal using the dmg version from mysql's site but after I deleted the installation files it just stopped working- as in when I run
rake cd:create
I get the mysql.sock error.
I'm going insane.. please help
For me I often need to force mysql to not use unix sockets, but regular php sockets.
To do this, connect to 127.0.0.1 instead of localhost. Works 90% of the time, all the time.
Major credit to John P. for helping me get this working last night
The first thing was to uninstall mysql using 'brew uninstall mysql'.
Then to install mysql from their development site. The community .dmg 64 bits version.
Then to find out where the path was pointing.
So in updating the paths he had to find where bin/mysql was and make sure bash_profile had it's path there.
PATH=$PATH:/usr/local/mysql/bin
The essential step after that was to 'source' the file so he had me run this command.
source ~/.bash_profile
From there mysql works flawlessly.
I'm running Ruby on Rails on a Solaris 10 server. I just reinstalled Ruby today to get things to work correctly with my MySQL system so I could add a new application I've been working on. I also updated my gems and the system. MySQL is the only thing in this system that hasn't been updated lately, that's at version 5.1.25.
When I run the Mongrel server the system will work okay for a couple loads, sometimes more. After reloading the index of one of my scaffolds a couple times, or adding a new item and loading its show page, the server reports a segmentation fault and exits. There is no debug output other than: "Segmentation Fault (core dumped)". All other output appears normal.
I've made a couple new applications on my server, and those show the same errors. Creating an application with the database disabled does not present this problem.
Any help or advice is greatly appreciated!
UPDATE: Unfortunately downgrading to MySQL 5.0.45 and reinstalling the mysql gem did not resolve the problem. If you have another suggestion, please let me know! You can see a complete list of the software installed and its versions here.
This is almost certainly a problem with the native C extensions of the mysql gem. There are a couple things I would try
Update your mysql-devel packages in your package manager and rebuild the mysql gem
Install a 5.0 version of mysql, and rebuild the mysql gem
Use the pure ruby mysql gem (http://www.tmtm.org/en/ruby/mysql/)
You might try installing the latest 5.0.x series version of MySQL, currently 5.0.83. I've never been able to get ActiveRecord to work with MySQL 5.1.x. I haven't gotten segfaults -- in my case it was different errors -- but I am using CentOS.
I think 5.0.x is the way to go.
if you check database.yml it's on the first line
MySQL. Versions 4.1 and 5.0 are recommended.
I ran into similar problems in XP with mysql 5.1
If all the other anwsers are not working, roll back to rails 2.1 that still has the mysql connector instead of the gem. I saw on some machines that the mysql gems was causing the software to crash or not work properly...