Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Can';优胜美地更新后登录MySQL_Mysql - Fatal编程技术网

Can';优胜美地更新后登录MySQL

Can';优胜美地更新后登录MySQL,mysql,Mysql,首先,我要说的是,我已经浏览了大量关于重置mysql密码的帖子(无论是在网上还是在网上),但似乎没有什么对我有用。哦,我对使用命令行也相当陌生 上周我将我的osx更新到了Yosemite,当我今天尝试更新Apache设置时,我注意到我无法再连接到MySQL。在更新之前,一切都很好(MySQL有一个密码,我知道并且使用过),所以我不知道发生了什么。奇怪的是,我还将另一台(较旧的)笔记本电脑更新到了约塞米蒂,而MySQL现在可以正常工作了 当我打开phpmyadmin时,我无法登录。保存的密码(在更

首先,我要说的是,我已经浏览了大量关于重置mysql密码的帖子(无论是在网上还是在网上),但似乎没有什么对我有用。哦,我对使用命令行也相当陌生

上周我将我的osx更新到了Yosemite,当我今天尝试更新Apache设置时,我注意到我无法再连接到MySQL。在更新之前,一切都很好(MySQL有一个密码,我知道并且使用过),所以我不知道发生了什么。奇怪的是,我还将另一台(较旧的)笔记本电脑更新到了约塞米蒂,而MySQL现在可以正常工作了

当我打开phpmyadmin时,我无法登录。保存的密码(在更新之前,它在Mavericks上工作)似乎不再工作了

下面是我在命令行上尝试的内容(无论是否先启动/停止MySQL(在安全模式下)):

我可以使用
mysql
命令,这让我


Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 4
Server version: 5.6.21 MySQL Community Server (GPL)

Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> 
尝试更新这里的密码会得到以下结果


mysql> UPDATE mysql.user SET Password=PASSWORD('password') WHERE User='root';
ERROR 1142 (42000): UPDATE command denied to user ''@'localhost' for table 'user'
mysql> 
我真的希望有人知道问题出在哪里,因为我别无选择

我将其用作更新Apache设置的参考

编辑: 塔塔评论后的其他信息

该评论给了我
-bash:/etc/init.d/mysqld:没有这样的文件或目录

另外,
sudo mysqld\u safe——跳过授权表
给了我:

141102 18:11:26 mysqld_safe Logging to '/usr/local/mysql/data/Maurices-MacBook-Pro.local.err'.
141102 18:11:26 mysqld_safe A mysqld process already exists
在那之后,我还是什么都做不了

不幸的是,我不知道在哪里可以找到mysql初始化脚本,也不知道要修改什么

解决方案
我找到了一个解决办法。我忘了我在启动时通过
launchctl
加载了一个
com.mysql.mysql.plist
文件,并在启动时将其添加到autostart mysql。首先执行一个
sudo launchctl unload-w/Library/LaunchDaemons/com.mysql.mysql.plist
停止mysql,让我以安全模式登录。

为了使此工作正常,需要使用--skip grant tables参数启动mysql服务器

 /etc/init.d/mysqld restart --skip-grant-tables 
查看此链接以了解更多信息


您的init脚本也可能没有将附加参数传输到mysqld_安全进程。您应该在流程列表中进行检查。

谢谢,但我已经试过了。我已经用附加信息编辑了我的帖子
 /etc/init.d/mysqld restart --skip-grant-tables