通过'root'用户连接到mysql时,我收到了上述错误。 命令尝试:
HashMap
我尝试将root凭据放在“/etc/my.cnf”文件中,但没有运气。
请帮忙。
答案 0 :(得分:0)
您必须重置您的mysql root密码
请按照以下说明操作:https://dev.mysql.com/doc/refman/5.7/en/resetting-permissions.html
答案 1 :(得分:0)
实际上,有很多类似于你的案例的问题,让你厌倦了他们的解决方案吗?
答案 2 :(得分:0)
首先:您不想将您的凭据放在/etc/my.cnf
中,而是放在~/.my.cnf
中(请注意前导点)。 .my.cnf
的内容应如下所示
[client]
user=USERNAME
pass=PASSWORD
如果您的密码正确无误,您只能使用mysql
登录,而无需任何选项。
如果这不起作用且您无法使用
登录mysql -u root -pMYPASS
(请注意-p
与实际密码之间缺少的空格),然后您可能需要重置密码。
答案 3 :(得分:0)
注意:此答案的全部功劳归于Netaji,您可以找到他的答案Here
我的问题通过以下方式解决了。
当我在命令下方输入时,我会得到一个错误。 sudo mysql -u root -p
Enter password:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES).
要解决此问题,请执行以下步骤。
输入命令
sudo mysqld_safe --skip-grant-tables&[4] 21878
然后发生以下错误。
2018-12-17T06:43:33.106111Z mysqld_safe Logging to syslog.
2018-12-17T06:43:33.108971Z mysqld_safe Logging to '/var/log/mysql/error.log'.
/usr/bin/mysqld_safe: 152: /usr/bin/mysqld_safe: cannot create /var/log/mysql/error.log: Permission denied
2018-12-17T06:43:33.111388Z mysqld_safe Directory '/var/run/mysqld' for UNIX socket file don't exists.
/usr/bin/mysqld_safe: 152: /usr/bin/mysqld_safe: cannot create /var/log/mysql//error.log: Permission denied
^C
[4] Exit 1 mysqld_safe --skip-grant-tables
要解决此错误,请遵循以下几行。
i) systemctl stop mysql
2018-12-17T06:48:42.971692Z mysqld_safe Logging to syslog.
2018-12-17T06:48:42.974451Z mysqld_safe Logging to '/var/log/mysql/error.log'.
2018-12-17T06:48:42.976653Z mysqld_safe Directory '/var/run/mysqld' for UNIX socket file don't exists.
ii) sudo mkdir -p /var/run/mysqld
iii) sudo chown mysql:mysql /var/run/mysqld
iv)sudo mysqld_safe --skip-grant-tables &
[5] 24203
2018-12-17T06:50:39.135292Z mysqld_safe Logging to syslog.
2018-12-17T06:50:39.137938Z mysqld_safe Logging to '/var/log/mysql/error.log'.
2018-12-17T06:50:39.152966Z mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
v) Then connect mysql -u root.
然后将出现MySQL提示。然后设置好密码。
vi) FLUSH PRIVILEGES;
ALTER USER'root'@'localhost'由'new_password'标识;
vi) systemctl stop mysql
vi)按照以下方式进行那次冲突之后。
`mysql -u root -p`