所以我正在运行crunchbang linux并使用以下终端命令安装mysql-server:
sudo apt-get install mysql-server
安装程序运行没有问题,但在尝试访问mysql时,我得到“错误1045访问被拒绝”。
ERROR 1045(28000):用户'用户名'@'localhost'拒绝访问(使用密码:否)
使用root也是如此。
我使用的教程说明在设置mysql-server时我会被要求设置密码,但这一步从未发生过。
编辑: 从我的系统中完全删除了与mysql相关的所有内容(包括配置文件),问题仍然存在。
尝试时
mysql -u root mysql
错误也会发生,但根据documentation,如果没有设置密码,这应该授予我访问权。
___更新: 因为即使使用我的新笔记本电脑(现在运行ubuntu 12.10)我仍然遇到这个问题,我会做一个快速更新:
无论
sudo dpkg-reconfigure mysql-server
也不是
mysql -u root
mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('yourpassword');
的工作。有什么想法吗?
__更新2
通过停止服务然后关注this guide,我似乎设法重置root密码。
仍然,使用
mysql -u root -p
并输入我设置的密码,它仍会拒绝访问。
答案 0 :(得分:1)
我会尝试该命令的一些变体(只需按Enter / empty / no password):
mysql -h localhost -u root -p
mysql -h 127.0.0.1 -u root -p
mysql -h $ HOSTNAME -u root -p
可能只是因为mysql无法将您识别为本地用户。
答案 1 :(得分:1)
如果您是Ubuntu / Debian,您可以执行以下操作:
sudo dpkg-reconfigure mysql-server
如果我没弄错的话,哪个人应该问你初始密码的初始问题。
编辑:
然后根据https://help.ubuntu.com/community/ApacheMySQLPHP
mysql -u root
mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('yourpassword');
答案 2 :(得分:0)
答案 3 :(得分:0)
好吧我怀疑是对的:我使用synaptic包管理器安装了mysql,在安装过程中,这似乎跳过了设置root密码的步骤。我不知道为什么密码重置不起作用,但是从命令行安装mysql后,一切都运行良好。