我一直在按照手册在Ubuntu上安装软件套件。我完全不了解MySQL。我已经在我的Ubuntu上完成了以下安装。

sudo apt-get update
sudo apt-get install mysql-server-5.5
sudo apt-get install mysql-client-5.5
sudo apt-get install mysql-common
sudo apt-get install glade
sudo apt-get install ntp

然后我做了

cd ~/Desktop/iPDC-v1.3.1/DBServer-1.1
mysql -uroot -proot <"Db.sql"

我最终得到以下错误消息。

错误1045(28000):拒绝访问用户'root'@'localhost'(使用密码:YES)

我该如何修复它并继续?


当前回答

因为你的错误信息显示“PASSWORD: YES”,这意味着你正在使用错误的密码。这种事也发生在我身上。幸运的是,我记得我的正确密码,并能够使数据库连接工作。

其他回答

一句话就解决了我的问题。

sudo dpkg-reconfigure mysql-server-5.5

如果问题仍然存在,请尝试强制修改密码。

停止MySQL服务器(Linux):

/etc/init.d/mysql stop

停止MySQL服务器(Mac OS X):

mysql.server stop

使用——skip-grant-tables启动mysqld_safe守护进程:

mysqld_safe --skip-grant-tables &
mysql -u root

设置新的MySQL root用户密码:

use mysql;
update user set password=PASSWORD("NEW-ROOT-PASSWORD") where User='root';
flush privileges;
quit;

停止MySQL服务器(Linux):

/etc/init.d/mysql stop

停止MySQL服务器(Mac OS X):

mysql.server stop

启动MySQL服务器服务,测试以root用户登录:

mysql -u root -p

2021年。

回答Ubuntu 20.04 (Focal Fossa)(也可能是其他发行版)。

在四处游荡了几天之后…这些答案对我都没用,我就这么做了,而且成功了!

始终在Bash shell中:

sudo systemctl disable mysql

为了阻止守护进程在启动时启动。

sudo apt purge mysql-server

and

sudo apt purge mysql-community-server*

在那里,它警告你,你将删除配置文件…所以它起作用了!因为他们就是捣乱的人!

sudo autoremove

删除所有遗留的包。

然后重启(也许这是可选的,但我做到了)。 另外,我从MySQL官方网页下载了MySQL -server-8.0:

sudo apt install mysql-server

它正在工作的信号是,当您输入上面的命令时,系统要求您输入根密码。

最后:

mysql -u root -p

还有你之前输入的密码。

在Mac上,如果你在使用安装时提供的第一个密码登录时遇到问题,也许你可以简单地关闭MySQL进程,然后再尝试。

So:

执行如下命令查看MySQL的PID: mysql | grep -v grep 终止进程: Kill -15[进程id]

可以使用初始密码登录:

mysql -uroot -p

它要求你输入密码。只需输入初始密码。

如果问题仍然存在,请尝试强制修改密码:

/etc/init.d/mysql stop

mysqld_safe --skip-grant-tables &

mysql -u root

设置新的MySQL root用户密码:

use mysql;
update user set password=PASSWORD("NEW-ROOT-PASSWORD") where User='root';
flush privileges;
quit;

停止MySQL服务器:

/etc/init.d/mysql stop

启动MySQL服务器并测试它:

mysql -u root -p