Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Problems installing mysql in ubuntu 18.04

I have installed mysql since upgrading the operating system. But there seems to be a problem with the root password. I have tried to fix this in many ways on the web, so far it has not been successful.

systemctl status mysql.service give:

● mysql.service - MySQL Community Server
   Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
   Active: failed (Result: exit-code) since Wed 2018-05-02 16:57:24 +07; 13s ago
  Process: 6172 ExecStartPre=/usr/share/mysql/mysql-systemd-start pre (code=exited, status=217/USER)
Thg 5 02 16:57:24 thiennguyen systemd[1]: mysql.service: Service hold-off time  over, scheduling restart.
Thg 5 02 16:57:24 thiennguyen systemd[1]: mysql.service: Scheduled restart job,  restart counter is at 5.
Thg 5 02 16:57:24 thiennguyen systemd[1]: Stopped MySQL Community Server.
Thg 5 02 16:57:24 thiennguyen systemd[1]: mysql.service: Start request repeated too quickly
Thg 5 02 16:57:24 thiennguyen systemd[1]: mysql.service: Failed with result 'exit-code'.
Thg 5 02 16:57:24 thiennguyen systemd[1]: Failed to start MySQL Community Server

journalctl -xe give: http://codepad.org/6EbGVu2Q

mysql_secure_installation give:

Securing the MySQL server deployment.
Enter password for user root: 
Error: Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)

mysql -u root -p give:

Enter password: 
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)

Especially when I install, mysql does not require setting password for root and i have reinstalled many times. Maybe the problem is old, but I have found many ways on the network but can not solve, so look forward to the help.

like image 217
VitVit Avatar asked May 02 '18 10:05

VitVit


4 Answers

The answer marked as correct is technically not right. Ubuntu 18.04 uses sockets for authorization and not passwords!!

(https://websiteforstudents.com/mariadb-installed-without-password-prompts-for-root-on-ubuntu-17-10-18-04-beta/)

For me logging in was as simple as:

sudo  mysql -u root      

I feel whoever is responsible for this "feature" really dropped the ball. There should have been a message stating that Ubuntu no longer used passwords when attempting to run mysql. this was a really drastic change in functionality.

like image 180
user286904 Avatar answered Sep 26 '22 15:09

user286904


You have to change the old password of MySQL at the time of secure installation. If you don't remember the old password try following way via root privilege:-

Stop the MySQL service.

service mysql stop

Start MySQL without password and permission checks.

mysqld_safe --skip-grant-tables &

Connect to MySQL

mysql -u root mysql

Run following commands to set a new password for root user.

UPDATE user SET password=PASSWORD('NEW_PASSWORD') WHERE user='root';
FLUSH PRIVILEGES;
service mysql restart

Some new version not support above UPDATE query try to use below

ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';
like image 39
Ganesh Avatar answered Sep 22 '22 15:09

Ganesh


I'm aware about this problem and when used 16.04 it never happened. And in 18.04, i just tried to use it to resolve.

sudo mysql_secure_installation

In this case, i can set my password, but it does not work

And that code does not solve the problem.

UPDATE user SET password=PASSWORD('NEW_PASSWORD') WHERE user='root';
like image 34
user9866732 Avatar answered Sep 24 '22 15:09

user9866732


After the installation just:

  1. sudo mysql
    

    (yes, no user no pass)

  2. You are now in the mysql console:

    ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'my_new_pass';
    
  3. FLUSH PRIVILEGES;

  4. That's it. You can now enter the console next time as usual:

    mysql -u root -p my_new_pass
    
like image 36
DimiDak Avatar answered Sep 24 '22 15:09

DimiDak