major / MySQLTuner-perl

MySQLTuner is a script written in Perl that will assist you with your MySQL configuration and make recommendations for increased performance and stability.
GNU General Public License v3.0
8.93k stars 1.29k forks source link

Attempted to use login credentials, but they were invalid. #248

Closed youraveragejoe closed 8 years ago

youraveragejoe commented 8 years ago

My server is running webuzo and I made the switch from MySQL 5.6 to MariaDB10.1 . Now I get the error message saying the login credentials are invalid. I know they aren't as before, in MySQL 5.6 I was able to use it and am able to use it in phpmyadmin as well. How could I fix this issue?

Thank you.

jmrenouard commented 8 years ago

Hi @youraveragejoe

Is it working using --pass option ?

Thanks for your feedback. @jmrenouard

youraveragejoe commented 8 years ago

Hi,

Thank you for your answer. I've even tried a fresh install of webuzo with mariadb but still not working with mysqltuner.pl. My version is : MariaDB10.1

I've tried:

perl mysqltuner.pl --user wp390 --pass 'C[Q7w!A03S' perl mysqltuner.pl --host 127.0.0.1 --user wp390 --pass 'C[Q7w!A03S'

and a few other variations, mentioning port, using localhost instead of 127.0.0.1 but still no results

MySQLTuner 1.6.18 - Major Hayden major@mhtx.net Bug reports, feature requests, and downloads at http://mysqltuner.com/ Run with '--help' for additional options and output filtering

[--] Skipped version check for MySQLTuner script [!!] Attempted to use login credentials, but they were invalid

jmrenouard commented 8 years ago

Hi @youraveragejoe

Can you try this : perl mysqltuner.pl --user wp390 --pass 'C[Q7w!A03S'

BTW, can you change also your password ? This tracker is public and everybody know your password now ;)

@jmrenouard

youraveragejoe commented 8 years ago

Hi,

Sorry for my late reply. I've tried but it doesn't work. Those details weren't my real db details, I've edited them before posting, I just let it similar to see length of password and so on.

[!!] Attempted to use login credentials, but they were invalid


From: Jean-Marie Renouard notifications@github.com Sent: Monday, September 26, 2016 2:25 PM To: major/MySQLTuner-perl Cc: youraveragejoe; Mention Subject: Re: [major/MySQLTuner-perl] Attempted to use login credentials, but they were invalid. (#248)

Hi @youraveragejoehttps://github.com/youraveragejoe

Can you try this : perl mysqltuner.pl --user wp390 --pass 'C[Q7w!A03S'

BTW, can you change also your password ? This tracker is public and everybody know your password now ;)

@jmrenouardhttps://github.com/jmrenouard

You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://github.com/major/MySQLTuner-perl/issues/248#issuecomment-249544559, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AVUaWzT6qQV9hhpwPmEUd7YZy_608qQWks5qt6uqgaJpZM4KDNGy.

youraveragejoe commented 8 years ago

Hi,

The only thing I can think of different is this, when I type: netstat -tlpn:

tcp6       0      0 :::3306                 :::*                    LISTEN      3567/mysqld

It shows tcp6 not regular tcp, could this be it?

jmrenouard commented 8 years ago

Hi @youraveragejoe

What provides command netstat -xlpn ?

Maybe you can use --host option in order to force TCP socket usage.

@jmrenouard

youraveragejoe commented 8 years ago

Hi Jmrenouard,

While writing this message I think I got a hint of what it might be going on? It's because is tcp6 and not regular tcp the protocol for 3306 ?

This is what I get on my config ( webuzo+mariadb 10.1+php7+nginx ):

Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 3895/nginx: master tcp 0 0 0.0.0.0:2002 0.0.0.0:* LISTEN 3979/nginx: master tcp 0 0 0.0.0.0:2003 0.0.0.0:* LISTEN 3979/nginx: master tcp 0 0 0.0.0.0:2004 0.0.0.0:* LISTEN 3979/nginx: master tcp 0 0 0.0.0.0:2005 0.0.0.0:* LISTEN 3979/nginx: master tcp 0 0 0.0.0.0:21 0.0.0.0:* LISTEN 3894/pure-ftpd (SER tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 32016/sshd tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 4035/master tcp 0 0 0.0.0.0:443 0.0.0.0:* LISTEN 3895/nginx: master tcp 0 0 127.0.0.1:8999 0.0.0.0:* LISTEN 3933/perl tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN 3947/php-fpm: maste tcp 0 0 127.0.0.1:9001 0.0.0.0:* LISTEN 3947/php-fpm: maste tcp6 0 0 :::21 :::* LISTEN 3894/pure-ftpd (SER tcp6 0 0 :::22 :::* LISTEN 32016/sshd tcp6 0 0 ::1:25 :::* LISTEN 4035/master tcp6 0 0 :::3306 :::* LISTEN 3909/mysqld

jmrenouard commented 8 years ago

Hi @youraveragejoe

I think you will be able to connect throught your IPv6 port with --host option.

Thanks for your feedback @jmrenouard

youraveragejoe commented 8 years ago

Hi @jmrenouard,

Thank you for you suggestion. I' tried and used the ip or domain with forcemem as well but still says wrong password

jmrenouard commented 8 years ago

Hi @youraveragejoe

Do you try to use .my.cnf or .mylogin.cnf approach to store your password ? IMHO, I think this is a more secure approach for this issue. Clear password are actually stored in the .bash_history file. So this is not a so good approach as it's seems.

@jmrenouard

youraveragejoe commented 8 years ago

Hi jmrenouard,

I think I've gotten to the bottom of this and it wasn't a bug, it was just a stupid mistake. The optimization rules, something like:

query_cache_type =1 join_buffer_size=512K tmp_table_size=64M max_heap_table_size=64M thread_cache_size=-1 innodb_buffer_pool_size= 4096M innodb_buffer_pool_instances=1

in my case were put under [client-server] in webuzo thus when trying to:

mysqladmin ping the answer was: mysqladmin: unknown variable 'query_cache_type=1'

after putting them in the correct place the answer to the command was:

mysqladmin --version mysqladmin Ver 9.1 Distrib 10.1.18-MariaDB, for Linux on x86_64

I just had to put the optimization rules under

[mysqld] and everything is working now.

If anyone is dealing with this hope it helps, it's not a bug it's just putting instructions in a wrong place.

jmrenouard commented 8 years ago

Hi @youraveragejoe

Thanks for sharing experience with mysqltuner.

Hope this issue can help MT user to get a faster answers to similar question.

I close this issue.

ryanjbonnell commented 7 years ago

For anyone else having this problem and getting the MySQLTuner error:

[!!] Attempted to use login credentials, but they were invalid

Check the validity of your my.cnf file by running the following Terminal command:

$ mysqladmin ping

If everything is healthy, you'll get a response similar to:

mysqld is alive

In my case, I was unable to login due to an unknown MySQL variable, which was indicated by:

$ mysqladmin ping
mysqladmin: unknown variable 'max_allowed_packet=1073741824'

Inspecting the contents of /etc/my.cnf showed:

...

# This group is read both both by the client and the server
# use it for options that affect everything
#
[client-server]
max_allowed_packet = 1073741824

Removing the invalid variable and restarting MySQL fixed the issue and allowed me to successfully login via MySQLTuner:

$ brew services restart mariadb
$ mysqltuner --host 127.0.0.1 --port 3306 --user root --noask

Tested on macOS 10.12.4 "Sierra", MariaDB 10.1.22 and MySQLTuner 1.6.18.

w3hr commented 6 years ago

i tried for like 10 mins, this script told me everytime i have wrong credentials, I have questioned myself, then i remember my old days in perl ... so if u got $$$ in your passwords or other special characters, dont waste your time, use backslash () to escape them, good night

armpdq commented 6 years ago

i tried for like 10 mins, this script told me everytime i have wrong credentials, I have questioned myself, then i remember my old days in perl ... so if u got $$$ in your passwords or other special characters, dont waste your time, use backslash () to escape them, good night

same issue, mysql 5.7 require strong password and mysqltuner is not usable anymore. any options to fix ?

jmrenouard commented 6 years ago

Hi

MySQL 8 is using mysql_config_editor for credentials.

Best regards

huadaonan commented 2 years ago

i have meet the same problem, maybe the host parse reason,when i change host from localhost to 127.0.0.1,and add socket address. that can be run. like this

perl mysqltuner.pl --defaults-file xxx --mysqladmin xxx --mysqlcmd xxx --user root --pass 'xxx' --host 127.0.0.1 --port 3306 --socket xx/mysqld.sock perl mysqltuner.pl --defaults-file xxx --mysqladmin xxx --mysqlcmd xxx --user root --pass 'xxx' --port 3306 --socket xx/mysqld.sock

huadaonan commented 2 years ago

my version is 1.8.7

pioneerpathan commented 2 years ago

Hi jmrenouard,

I think I've gotten to the bottom of this and it wasn't a bug, it was just a stupid mistake. The optimization rules, something like:

query_cache_type =1 join_buffer_size=512K tmp_table_size=64M max_heap_table_size=64M thread_cache_size=-1 innodb_buffer_pool_size= 4096M innodb_buffer_pool_instances=1

in my case were put under [client-server] in webuzo thus when trying to:

mysqladmin ping the answer was: mysqladmin: unknown variable 'query_cache_type=1'

after putting them in the correct place the answer to the command was:

mysqladmin --version mysqladmin Ver 9.1 Distrib 10.1.18-MariaDB, for Linux on x86_64

I just had to put the optimization rules under

[mysqld] and everything is working now.

If anyone is dealing with this hope it helps, it's not a bug it's just putting instructions in a wrong place.

Hello folks,

I had the same issue. as @youraveragejoe said, I try with mysqladmin ping and catch error that was in my.cnf file. I removed the unknown variable line and it worked like a charm.

Thanks.