KingJinho
KingJinho

Reputation: 763

fail to start mysql(mariadb)

i have been spending hours figuring out problems in connection mysql to use mariadb eventually. here's a situation.

situation:

1.i use macbook, and i am not that familiar with computer programming. i tried to connect java eclipse and mariadb. so i looked it up online. and at the same time, i opened up terminal and started my mysql using

mysql.server start

and it worked. and i was supposed to download mariaddb.2.2 jar something to connect it with eclipse, but i mistakenly downloaded "mariadb-10.2.12-osx10.13-x86_64.pkg" and installed it. and i also typed

mysql.server stop

and all that kind of things. lots and lots of things so that i can`t even remember after i found out i downloaded the wrong things, i felt like this is way beyond my skills, so i jumped back to play with mariadb.

i opened up terminal and typed

mysql.server start

and termial keeps showing me this until now

.180322 00:04:47 mysqld_safe Logging to '/usr/local/var/mysql/sinjinhos-MacBook-Air-146.local.err'.
180322 00:04:47 mysqld_safe Starting mysqld daemon with databases from /usr/local/var/mysql
. ERROR! 

i still think that this tragedy started beacause i installed mariadb again... i literally tried everything and still couldn`t figure it out. please help me!!

Upvotes: 1

Views: 2184

Answers (1)

Jim Wright
Jim Wright

Reputation: 6058

From your initial post you can see that mariadb is logging the following file.

180322 00:04:47 mysqld_safe Logging to '/usr/local/var/mysql/sinjinhos-MacBook-Air-146.local.err'

Inside that file you found the following error.

2018-03-22 0:36:36 140736284734272 [ERROR] Can't start server: Bind on TCP/IP port. Got error: 48: Address already in use 2018-03-22 0:36:36 140736284734272 [ERROR] Do you already have another mysqld server running on port: 3306 ? 2018-03-22 0:36:36 140736284734272 [ERROR] Aborting

The key part of the error is Address already in use. Everything running on your computer that listens for connections (like a database or a web server) will listen on a specific port. MySQL (and therefore MariaDB) listens on port 3306 by default. The important part is that you can't have multiple applications listening on the same port!

So where do you go from here? I suspect you still have MySQL running on your laptop, and once you stop it you will be able to start up a new instance.

To check if MySQL is running you can use the following command:

ps -ef | grep mysql

If anything shows here then it is running, and you should stop the service. How you do this will vary depending on how you installed it - try mysql.server stop first and run the above command again. If it is still running and you can't figure it out then you can kill the service. This is not recommended and cause MySQL data corruption - although if you have no data there then you should be OK.

Example output of ps -ef. Yours should show MySQL near the end, and the second column shows the process ID which you can use to kill the process.

    PID
    \/
0  9504  9491   0  3:44pm ttys007    0:00.00 ps -ef`

So I would use:

kill 9504

You should then be able to start the service again.

mysql.server start

Upvotes: 2

Related Questions