我一直在按照手册在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)
我该如何修复它并继续?
我使用Ubuntu 16.04 (Xenial Xerus)和安装MySQL 5.7。
我也有同样的问题
禁止root用户登录。
我尝试了以下步骤:
get-select | grep mysql(获取mysql版本)。
dpkg-reconfigure mysql -服务器- 5.7
Mysql -u root -p
如果没有-p,则不会提示您询问密码。进入后,您可以按照以下步骤创建一个带有密码的用户:
CREATE USER 'your_new_username'@'your-hostname' IDENTIFIED BY 'your-password';
GRANT ALL PRIVILEGES ON *.* to 'your_new_username'@'your-hostname' WITH GRANT OPTION;
从根目录退出,从上面给出的<name>登录。
mysql -u <your_new_username> -p
由于某种原因,仍然不能输入MySQL。在所有。我建议养成使用mysql -u <name> -p的习惯。
在最近的MySQL版本中,MySQL中没有任何密码。用户表。
所以你需要执行ALTER USER。将这一行命令放入文件中。
ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';
并以init文件的形式执行(以root或mysql用户):
mysqld_safe --init-file=/home/me/mysql-init &
MySQL服务器需要停止才能启动mysqld_safe。
另外,加载这个init文件的AppArmor权限可能也有问题。阅读更多在AppArmor和MySQL。