Problem connecting to mysql database with mysql workbench
Linux - NewbieThis Linux forum is for members that are new to Linux.
Just starting out and have a question?
If it is not in the man pages or the how-to's this is the place!
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
Problem connecting to mysql database with mysql workbench
Hi I posted this on mysql forums but nobody replied so I wonder if someone could help me here? I am new to mysql and I want to learn some code. I installed mysql community workbench on linux mint victoria with snapd and then I installed mysql client and server with the software centre. I can see a database in mysql workbench : Local instance 3306 : root : localhost:3306. When I click on it I get the following message:
Your connection attempt failed for user 'root' to the Mysql server at localhost:3306:
Access denied for user 'root'@'localhost'
Please:
1 Check that Mysql is running on address localhost
2 Check that Mysql is reachable on port 3306(note: 3306 is the default, but this can be changed)
3 Check the user root has rights to connect to localhost from your address(Mysql rights define what clients can connect to the server and from which machines)
4 Make sure you are both providing a password if needed and using the correct password for localhost connecting from the host address you are connecting from
Can someone show me how to carry out these checks so I can connect to the database and practice some code?
Hi I posted this on mysql forums but nobody replied so I wonder if someone could help me here? I am new to mysql and I want to learn some code. I installed mysql community workbench on linux mint victoria with snapd and then I installed mysql client and server with the software centre. I can see a database in mysql workbench : Local instance 3306 : root : localhost:3306. When I click on it I get the following message:
Code:
Your connection attempt failed for user 'root' to the Mysql server at localhost:3306:
Access denied for user 'root'@'localhost'
Please:
1 Check that Mysql is running on address localhost
2 Check that Mysql is reachable on port 3306(note: 3306 is the default, but this can be changed)
3 Check the user root has rights to connect to localhost from your address(Mysql rights define what clients can connect to the server and from which machines)
4 Make sure you are both providing a password if needed and using the correct password for localhost connecting from the host address you are connecting from
Can someone show me how to carry out these checks so I can connect to the database and practice some code?
Did you try to look up how to do any of this??? Doing basic research should be something done for any issue.
MySQL is just another Linux service. Try running "sudo systemctl status mysql.service" and see if it's running. Did you actually modify the MySQL config to change the port?? If not, then it's still using 3306. And root should (by default) have access to things (again, unless you've changed things).
Which distribution of Linux are you using and which version?
I would suggest running mysql_secure_installation explained at the link below. Did you use a password when trying to access mysql? Did you create a password for root in mysql?
ss -l -p -n | grep mysql
u_str LISTEN 0 80 /var/run/mysql/mysql.sock 8375 * 0 users:(("mariadbd",pid=1492,fd=24))
Note that there's a "skip-networking" parameter. Make sure the server's not started with that if you want to connect over a network. Check its config files. Try to access the server through the command line first to make sure it works. Also check ~/.my.cnf config files. If you don't have a .my.cnf, you can specify the user and pass like mysql -u root -p.
Code:
mysql
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 3
Server version: 10.11.6-MariaDB Source distribution
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
+--------------------+
1 row in set (0.023 sec)
MariaDB [(none)]> \q
Bye
when I try to log in in the terminal with mysql -u root -p
I get ERROR 1698 (28000): Access denied for user 'root'@'localhost'
how do I correct that please?
when I try to log in in the terminal with mysql -u root -p
I get ERROR 1698 (28000): Access denied for user 'root'@'localhost'
how do I correct that please?
As you were told, you should already have access. You were told how to check to see if the service is running, but you haven't actually told us if you DID anything yet, aside from the same thing you did initially; try to log in.
Did you check the service to see if it's running??? Did you change anything?? Did you try the command given to you by jaywa? Did you try to look up the exact message you got, that michaelk gave you a link for???
4 Make sure you are both providing a password if needed and using the correct password for localhost connecting from the host address you are connecting from
By default newer installs of MySQL set a random password that you can retrieve by doing grep ‘temporary’ on the mysql log file then you can set the root password with:
Code:
mysql -uroot -pWhateverYouFound
ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyN3wP4ssw0rd';
flush privileges;
exit;
If you had run mysql_secure_installation as suggested above, this would all have been taken care of as you are then asked to create a root password for mysql if you don't have one.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.