Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

I'm having issues getting my new MySQL server (v5.6) to start on Ubuntu Desktop 12.04 (64-bit).

Description of the problem:

The problem is that, after following instructions for installing to Linux using generic binaries, when I do sudo bin/mysqld_safe --user=mysql & the console prints a few lines and then hangs (see command line output below). After this, I don't get my command prompt back. I know the & means it's supposed to be a background process, but I expected to still get my command prompt back...

Steps I've done leading up to the problem:

The instructions I'm following are here. I get all the way up to the point where it says to run the command pasted above, and that's when I lose my command prompt. I double checked that I downloaded the 64-bit TAR file, not the 32-bit. I've double checked my folder and file permissions (everything /usr/local/mysql and down is owned my mysql:mysql). I also checked my [host].err file, which is empty. I've googled and searched these forums for a resolution but none of the existing answers have solved my particular problem.

I'm doing these steps on a virtual machine, by the way, so I've taken "snapshots" and gotten my VM's to the point where I can recreate this problem over and over again. Just to rule out the possibility that the issue is specific to my VM's, I tried the same exact steps on a non-VM and got the same result.

Next steps:

In the meantime, I can move forward by starting over with a clean MySQL install using sudo apt-get install mysql-client-5.5 mysql-server-5.5, but I'm really interested in understanding why all attempts to install using the generic binaries have failed. Any help that anyone can provide would be really appreciated.

Command line output:

me@vm-ubuntu:/usr/local/mysql$ sudo bin/mysqld_safe --user=mysql &
[1] 2051
me@vm-ubuntu:/usr/local/mysql$ 130708 09:00:12 mysqld_safe Logging to '/usr/local/mysql-5.6.12-linux-glibc2.5-x86_64/data/vm-ubuntu.err'.
130708 09:00:12 mysqld_safe Starting mysqld daemon with databases from /usr/local/mysql-5.6.12-linux-glibc2.5-x86_64/data
130708 09:00:15 mysqld_safe mysqld from pid file /usr/local/mysql-5.6.12-linux-glibc2.5-x86_64/data/vm-ubuntu.pid ended
share|improve this question

1 Answer 1

up vote 0 down vote accepted

You're 99% of the way there -- the & does indeed instruct Bash to put the process in the background, and the [1] 2051, showing the [job number] and pid of the backgrounded process, shows that that's happening correctly. This being the case, you actually are getting your command prompt back, but it's not quite obvious that you are, because of the lines written by MySQL to standard error. Consider the third line of your pasted output:

me@vm-ubuntu:/usr/local/mysql$ 130708 09:00:12 mysqld_safe Logging to '/usr/local/mysql-5.6.12-linux-glibc2.5-x86_64/data/vm-ubuntu.err'.

The beginning of this line is your prompt, but it's lost against the stderr output generated by MySQL. If you press Enter once or twice after that stderr output appears, you should find it causes your prompt to show up again as you expect to see it.

share|improve this answer
    
You were right -- pressing Enter brought my command prompt back, and after that, I was able to confirm that my server was running. Thank you so much for teaching me that subtle yet crucial nugget of knowledge! (at the same time while I'm learning the ins and outs of setting up a MySQL environment, I'm also learning to become more comfortable with the command line) thank you! –  Scott Jul 8 '13 at 17:06
    
Glad to be of help! –  Aaron Miller Jul 8 '13 at 17:17

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.