I installed mysql and set password for root but failed to login, why?
up vote
0
down vote
favorite
I have searched many similar problems and I had reset my password.
I was just so qurious and want to know WHY this happend.
Most problems have something to do with remote login and anonymous user, what I encountered is different.
after installation, I executed
$ mysql_secure_installation
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)
$ sudo service mysql start
* Starting MySQL database server mysqld
No directory, logging in with HOME=/
$ sudo mysql_secure_installation
Securing the MySQL server deployment.
Connecting to MySQL using a blank password.
VALIDATE PASSWORD PLUGIN can be used to test passwords
and improve security. It checks the strength of password
and allows the users to set only those passwords which are
secure enough. Would you like to setup VALIDATE PASSWORD plugin?
Press y|Y for Yes, any other key for No: n
Please set the password for root here.
New password:
Re-enter new password:
...
Reload privilege tables now? (Press y|Y for Yes, any other key for No) : y
Success.
All done!
then, I tried to log in and got
~$ mysql -u root -p
Enter password:
ERROR 1698 (28000): Access denied for user 'root'@'localhost'
I am sure I used the correct password.
Here is the user table:
+------------------+-----------+-----------------------+
| User | host | plugin |
+------------------+-----------+-----------------------+
| root | localhost | auth_socket |
| mysql.session | localhost | mysql_native_password |
| mysql.sys | localhost | mysql_native_password |
| debian-sys-maint | localhost | mysql_native_password |
+------------------+-----------+-----------------------+
Could someone please explain it?
mysql login
add a comment |
up vote
0
down vote
favorite
I have searched many similar problems and I had reset my password.
I was just so qurious and want to know WHY this happend.
Most problems have something to do with remote login and anonymous user, what I encountered is different.
after installation, I executed
$ mysql_secure_installation
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)
$ sudo service mysql start
* Starting MySQL database server mysqld
No directory, logging in with HOME=/
$ sudo mysql_secure_installation
Securing the MySQL server deployment.
Connecting to MySQL using a blank password.
VALIDATE PASSWORD PLUGIN can be used to test passwords
and improve security. It checks the strength of password
and allows the users to set only those passwords which are
secure enough. Would you like to setup VALIDATE PASSWORD plugin?
Press y|Y for Yes, any other key for No: n
Please set the password for root here.
New password:
Re-enter new password:
...
Reload privilege tables now? (Press y|Y for Yes, any other key for No) : y
Success.
All done!
then, I tried to log in and got
~$ mysql -u root -p
Enter password:
ERROR 1698 (28000): Access denied for user 'root'@'localhost'
I am sure I used the correct password.
Here is the user table:
+------------------+-----------+-----------------------+
| User | host | plugin |
+------------------+-----------+-----------------------+
| root | localhost | auth_socket |
| mysql.session | localhost | mysql_native_password |
| mysql.sys | localhost | mysql_native_password |
| debian-sys-maint | localhost | mysql_native_password |
+------------------+-----------+-----------------------+
Could someone please explain it?
mysql login
Simply reset once and check, using the steps below. (without even requiring ur current password)
– Srikanth A
Nov 12 at 4:53
Please mark as answered, if it answers
– Srikanth A
Nov 12 at 4:54
add a comment |
up vote
0
down vote
favorite
up vote
0
down vote
favorite
I have searched many similar problems and I had reset my password.
I was just so qurious and want to know WHY this happend.
Most problems have something to do with remote login and anonymous user, what I encountered is different.
after installation, I executed
$ mysql_secure_installation
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)
$ sudo service mysql start
* Starting MySQL database server mysqld
No directory, logging in with HOME=/
$ sudo mysql_secure_installation
Securing the MySQL server deployment.
Connecting to MySQL using a blank password.
VALIDATE PASSWORD PLUGIN can be used to test passwords
and improve security. It checks the strength of password
and allows the users to set only those passwords which are
secure enough. Would you like to setup VALIDATE PASSWORD plugin?
Press y|Y for Yes, any other key for No: n
Please set the password for root here.
New password:
Re-enter new password:
...
Reload privilege tables now? (Press y|Y for Yes, any other key for No) : y
Success.
All done!
then, I tried to log in and got
~$ mysql -u root -p
Enter password:
ERROR 1698 (28000): Access denied for user 'root'@'localhost'
I am sure I used the correct password.
Here is the user table:
+------------------+-----------+-----------------------+
| User | host | plugin |
+------------------+-----------+-----------------------+
| root | localhost | auth_socket |
| mysql.session | localhost | mysql_native_password |
| mysql.sys | localhost | mysql_native_password |
| debian-sys-maint | localhost | mysql_native_password |
+------------------+-----------+-----------------------+
Could someone please explain it?
mysql login
I have searched many similar problems and I had reset my password.
I was just so qurious and want to know WHY this happend.
Most problems have something to do with remote login and anonymous user, what I encountered is different.
after installation, I executed
$ mysql_secure_installation
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)
$ sudo service mysql start
* Starting MySQL database server mysqld
No directory, logging in with HOME=/
$ sudo mysql_secure_installation
Securing the MySQL server deployment.
Connecting to MySQL using a blank password.
VALIDATE PASSWORD PLUGIN can be used to test passwords
and improve security. It checks the strength of password
and allows the users to set only those passwords which are
secure enough. Would you like to setup VALIDATE PASSWORD plugin?
Press y|Y for Yes, any other key for No: n
Please set the password for root here.
New password:
Re-enter new password:
...
Reload privilege tables now? (Press y|Y for Yes, any other key for No) : y
Success.
All done!
then, I tried to log in and got
~$ mysql -u root -p
Enter password:
ERROR 1698 (28000): Access denied for user 'root'@'localhost'
I am sure I used the correct password.
Here is the user table:
+------------------+-----------+-----------------------+
| User | host | plugin |
+------------------+-----------+-----------------------+
| root | localhost | auth_socket |
| mysql.session | localhost | mysql_native_password |
| mysql.sys | localhost | mysql_native_password |
| debian-sys-maint | localhost | mysql_native_password |
+------------------+-----------+-----------------------+
Could someone please explain it?
mysql login
mysql login
edited Nov 12 at 4:43
Gunasekar
5381417
5381417
asked Nov 12 at 4:33
kakakali
63
63
Simply reset once and check, using the steps below. (without even requiring ur current password)
– Srikanth A
Nov 12 at 4:53
Please mark as answered, if it answers
– Srikanth A
Nov 12 at 4:54
add a comment |
Simply reset once and check, using the steps below. (without even requiring ur current password)
– Srikanth A
Nov 12 at 4:53
Please mark as answered, if it answers
– Srikanth A
Nov 12 at 4:54
Simply reset once and check, using the steps below. (without even requiring ur current password)
– Srikanth A
Nov 12 at 4:53
Simply reset once and check, using the steps below. (without even requiring ur current password)
– Srikanth A
Nov 12 at 4:53
Please mark as answered, if it answers
– Srikanth A
Nov 12 at 4:54
Please mark as answered, if it answers
– Srikanth A
Nov 12 at 4:54
add a comment |
1 Answer
1
active
oldest
votes
up vote
0
down vote
Just reset the password using the steps below.
Source - MYSQL Reference Manual
1.) Log on to your system as the Unix user that the MySQL server runs as (for example, mysql).
- Stop the MySQL server if it is running. Locate the .pid file that contains the server's process ID. The exact location and name of this file depend on your distribution, host name, and configuration. Common locations are /var/lib/mysql/, /var/run/mysqld/, and /usr/local/mysql/data/. Generally, the file name has an extension of .pid and begins with either mysqld or your system's host name.
Stop the MySQL server by sending a normal kill (not kill -9) to the mysqld process. Use the actual path name of the .pid file in the following command:
shell> kill
cat /mysql-data-directory/host_name.pid
1
Use backticks (not forward quotation marks) with the cat command. These cause the output of cat to be substituted into the kill command.
- Create a text file containing the following statement on a single line. Replace the password with the password that you want to use.
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MyNewPass');1
Save the file. This example assumes that you name the file /home/me/mysql-init. The file contains the password, so do not save it where it can be read by other users. If you are not logged in as mysql (the user the server runs as), make sure that the file has permissions that permit mysql to read it.
Start the MySQL server with the special --init-file option:
shell> mysqld --init-file=/home/me/mysql-init &1
The server executes the contents of the file named by the --init-file option at startup, changing the 'root'@'localhost' account password.
Other options may be necessary as well, depending on how you normally start your server. For example, --defaults-file may be needed before --init-file.
- After the server has started successfully, delete /home/me/mysql-init.
You should now be able to connect to the MySQL server as root using the new password. Stop the server and restart it normally.
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53256015%2fi-installed-mysql-and-set-password-for-root-but-failed-to-login-why%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
0
down vote
Just reset the password using the steps below.
Source - MYSQL Reference Manual
1.) Log on to your system as the Unix user that the MySQL server runs as (for example, mysql).
- Stop the MySQL server if it is running. Locate the .pid file that contains the server's process ID. The exact location and name of this file depend on your distribution, host name, and configuration. Common locations are /var/lib/mysql/, /var/run/mysqld/, and /usr/local/mysql/data/. Generally, the file name has an extension of .pid and begins with either mysqld or your system's host name.
Stop the MySQL server by sending a normal kill (not kill -9) to the mysqld process. Use the actual path name of the .pid file in the following command:
shell> kill
cat /mysql-data-directory/host_name.pid
1
Use backticks (not forward quotation marks) with the cat command. These cause the output of cat to be substituted into the kill command.
- Create a text file containing the following statement on a single line. Replace the password with the password that you want to use.
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MyNewPass');1
Save the file. This example assumes that you name the file /home/me/mysql-init. The file contains the password, so do not save it where it can be read by other users. If you are not logged in as mysql (the user the server runs as), make sure that the file has permissions that permit mysql to read it.
Start the MySQL server with the special --init-file option:
shell> mysqld --init-file=/home/me/mysql-init &1
The server executes the contents of the file named by the --init-file option at startup, changing the 'root'@'localhost' account password.
Other options may be necessary as well, depending on how you normally start your server. For example, --defaults-file may be needed before --init-file.
- After the server has started successfully, delete /home/me/mysql-init.
You should now be able to connect to the MySQL server as root using the new password. Stop the server and restart it normally.
add a comment |
up vote
0
down vote
Just reset the password using the steps below.
Source - MYSQL Reference Manual
1.) Log on to your system as the Unix user that the MySQL server runs as (for example, mysql).
- Stop the MySQL server if it is running. Locate the .pid file that contains the server's process ID. The exact location and name of this file depend on your distribution, host name, and configuration. Common locations are /var/lib/mysql/, /var/run/mysqld/, and /usr/local/mysql/data/. Generally, the file name has an extension of .pid and begins with either mysqld or your system's host name.
Stop the MySQL server by sending a normal kill (not kill -9) to the mysqld process. Use the actual path name of the .pid file in the following command:
shell> kill
cat /mysql-data-directory/host_name.pid
1
Use backticks (not forward quotation marks) with the cat command. These cause the output of cat to be substituted into the kill command.
- Create a text file containing the following statement on a single line. Replace the password with the password that you want to use.
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MyNewPass');1
Save the file. This example assumes that you name the file /home/me/mysql-init. The file contains the password, so do not save it where it can be read by other users. If you are not logged in as mysql (the user the server runs as), make sure that the file has permissions that permit mysql to read it.
Start the MySQL server with the special --init-file option:
shell> mysqld --init-file=/home/me/mysql-init &1
The server executes the contents of the file named by the --init-file option at startup, changing the 'root'@'localhost' account password.
Other options may be necessary as well, depending on how you normally start your server. For example, --defaults-file may be needed before --init-file.
- After the server has started successfully, delete /home/me/mysql-init.
You should now be able to connect to the MySQL server as root using the new password. Stop the server and restart it normally.
add a comment |
up vote
0
down vote
up vote
0
down vote
Just reset the password using the steps below.
Source - MYSQL Reference Manual
1.) Log on to your system as the Unix user that the MySQL server runs as (for example, mysql).
- Stop the MySQL server if it is running. Locate the .pid file that contains the server's process ID. The exact location and name of this file depend on your distribution, host name, and configuration. Common locations are /var/lib/mysql/, /var/run/mysqld/, and /usr/local/mysql/data/. Generally, the file name has an extension of .pid and begins with either mysqld or your system's host name.
Stop the MySQL server by sending a normal kill (not kill -9) to the mysqld process. Use the actual path name of the .pid file in the following command:
shell> kill
cat /mysql-data-directory/host_name.pid
1
Use backticks (not forward quotation marks) with the cat command. These cause the output of cat to be substituted into the kill command.
- Create a text file containing the following statement on a single line. Replace the password with the password that you want to use.
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MyNewPass');1
Save the file. This example assumes that you name the file /home/me/mysql-init. The file contains the password, so do not save it where it can be read by other users. If you are not logged in as mysql (the user the server runs as), make sure that the file has permissions that permit mysql to read it.
Start the MySQL server with the special --init-file option:
shell> mysqld --init-file=/home/me/mysql-init &1
The server executes the contents of the file named by the --init-file option at startup, changing the 'root'@'localhost' account password.
Other options may be necessary as well, depending on how you normally start your server. For example, --defaults-file may be needed before --init-file.
- After the server has started successfully, delete /home/me/mysql-init.
You should now be able to connect to the MySQL server as root using the new password. Stop the server and restart it normally.
Just reset the password using the steps below.
Source - MYSQL Reference Manual
1.) Log on to your system as the Unix user that the MySQL server runs as (for example, mysql).
- Stop the MySQL server if it is running. Locate the .pid file that contains the server's process ID. The exact location and name of this file depend on your distribution, host name, and configuration. Common locations are /var/lib/mysql/, /var/run/mysqld/, and /usr/local/mysql/data/. Generally, the file name has an extension of .pid and begins with either mysqld or your system's host name.
Stop the MySQL server by sending a normal kill (not kill -9) to the mysqld process. Use the actual path name of the .pid file in the following command:
shell> kill
cat /mysql-data-directory/host_name.pid
1
Use backticks (not forward quotation marks) with the cat command. These cause the output of cat to be substituted into the kill command.
- Create a text file containing the following statement on a single line. Replace the password with the password that you want to use.
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MyNewPass');1
Save the file. This example assumes that you name the file /home/me/mysql-init. The file contains the password, so do not save it where it can be read by other users. If you are not logged in as mysql (the user the server runs as), make sure that the file has permissions that permit mysql to read it.
Start the MySQL server with the special --init-file option:
shell> mysqld --init-file=/home/me/mysql-init &1
The server executes the contents of the file named by the --init-file option at startup, changing the 'root'@'localhost' account password.
Other options may be necessary as well, depending on how you normally start your server. For example, --defaults-file may be needed before --init-file.
- After the server has started successfully, delete /home/me/mysql-init.
You should now be able to connect to the MySQL server as root using the new password. Stop the server and restart it normally.
answered Nov 12 at 4:52
Srikanth A
1,87931022
1,87931022
add a comment |
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53256015%2fi-installed-mysql-and-set-password-for-root-but-failed-to-login-why%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Simply reset once and check, using the steps below. (without even requiring ur current password)
– Srikanth A
Nov 12 at 4:53
Please mark as answered, if it answers
– Srikanth A
Nov 12 at 4:54