CrazySynthax
CrazySynthax

Reputation: 14988

MySQL Workbench on Linux

I installed MySQL on Ubuntu 16.04. I can login to MySQL shell by typing the command:

sudo mysql -u root

However, I also want to see the DB via MySQL Workbench. I installed it on my computer, and when I go to Database -> Connect to Database I get the following window:

enter image description here

When I click 'OK' I get the following dialog:

enter image description here

I checked 1 and 2. 3 I don't know how to check and as for 4, I don't know what is the password at all (I don't have to use it to login via the console).

Do you know how to resolve it?

Upvotes: 0

Views: 410

Answers (3)

CrazySynthax
CrazySynthax

Reputation: 14988

I think that I found the problem. When I installed MySQL, I skipped the option to give a password to root user. Therefore, I decided to remove MySQL from my linux by using the command:

apt-get purge mysql mysql-server mysql-common mysql-client

and then re-install it by:

apt-get install mysql-server

This time, I gave a password to root user during the installation, and after the installation had been finished, I opened MySQL Workbench and used the password I gave during the installation.

Upvotes: 0

simon
simon

Reputation: 81

Use terminal login mysql

sudo mysql -u root

Initial root password

update user set password=PASSWORD(‘123456’) where User='root';

And then try workbench login again.

If you want to connect mysql service from any others host except localhost, you need set root host to %

mysql -u root –p
mysql>use mysql;
mysql>update user set host = '%' where user = 'root';
mysql>select host, user from user;   --check result,init value maybe 127.0.0.1 or localhost

Upvotes: 1

Namphibian
Namphibian

Reputation: 12211

Firstly never work with root on a server. Period it is a bad habit. So first things first would be to log into the command line and create a user that is the root equivalent and then use that user.

So use the command line and then execute the following steps:

   CREATE USER 'username'@'%' IDENTIFIED BY 'password';
   GRANT ALL PRIVILEGES ON *.* TO 'username'@'%'
   WITH GRANT OPTION;
   FLUSH PRIVILEGES;

This will create an administrative user called username. You can then use this account to log in. Get in the habit of doing this.

Upvotes: 1

Related Questions