好的,我问这个问题,因为我试着寻找过去4个小时的答案 我甚至不知道我在服务器中做了什么,它不允许我从本地主机连接。但即使安装了与mysql安装相关的任何内容并仅重新安装服务器,它也不会让我连接。
当我在应用安全设置上安装服务器后尝试配置服务器时,它失败并给我错误。
我的服务器安装在普通PC上而不是任何网站上,PC运行win 7,我尝试了skip-grant-tables选项以及卸载服务器后删除注册表项。
如果有人有任何其他选择供我使用,或者如果您认为我在其他选项中做错了,请告诉我如何解决做正确的事情以及如何做到这一点。
答案 0 :(得分:3)
在安装新版本的mysql5.5时我也遇到了同样的问题,但我解决了它。
如果你通过mysql安装的路径,在你的windows系统的windows中,“c:\ mysqlinstalllocation \ bin” 你可以从这个目录运行mysql查询, 但是如果你已经将mysql命令添加到windows中的path选项,在环境变量中,这将帮助你从命令行运行自定义命令,你可以直接从命令提示符中的任何目录运行它。
只需在mysql.ini文件的[mysqld]标题下添加“skip-grant-tables”命令,并确保在执行此操作后重新启动服务器,并运行mysql,它将起作用。此时您将在没有任何密码的情况下登录,因此建议此时删除密码,这样您就可以在取消注释skip-grant-tables“命令后轻松登录
在您从root用户删除密码后,请确保删除“skip-grant-tables”命令,或使用#将其注释掉,然后重新启动服务器。它会起作用。
现在您可以在没有任何密码的情况下登录,并运行grant命令,并设置您喜欢的任何密码。
答案 1 :(得分:1)
您可以解决以下问题:
[mysqld]看起来像
# The MySQL server
[mysqld]
skip-grant-tables
port= 3306
socket = "C:/xampp/mysql/mysql.sock"
basedir = "C:/xampp/mysql"
tmpdir = "C:/xampp/tmp"
datadir = "C:/xampp/mysql/data"
pid_file = "mysql.pid"
答案 2 :(得分:0)
您需要添加相关权限并使用skip-grant-tables选项绕过内置安全性。
GRANT ALL ON *.* TO 'root'@'localhost' IDENTIFIED by 'password';
正常重启而没有skip-grant-tables标志。