1.在终端输入下面命令关闭正在运行的mysql,如果msyql没有运行可以跳过,需要输入mysql的密码。如果mysql密码忘记了,可以直接通过系统偏好设置里面关闭!
/usr/local/mysql/bin/mysqladmin-u root-p shutdown
2.进入mysql的bin目录执行如下命令
$cd /usr/local/mysql/bin
$sudo su
之后输入管理员密码会看到
sh-3.2#
3.之后我们输入下面命令以安全模式运行mysql
sh-3.2#./mysqld_safe --skip-grant-tables &
4.回到终端点击Command + N 重新打开一个终端
输入
mysql-u-root
解决方法:第一步:如果mysql服务正在进行,将之停止。
第二步:在终端中以管理员权限启动mysqld_safe,命令如下:
sudo/usr/local/mysql/bin/mysqld_safe--skip-grant-tables
执行结果如下:
mysqld_safe Logging to'/usr/local/mysql/data/lyqdeMacBook-Pro.local.err'.2016-06-12T08:29:17.6NZ mysqld_safe Starting mysqld daemon with databasesfrom/usr/local/mysql/data
第三步:不要关闭当前的终端窗口,新建一个终端窗口,输入如下命令,回车登录mysql
/usr/local/mysql/bin/mysql
登录后,看到欢迎信息:
看到结果:
Reading table informationforcompletion of table and column names
You can turn offthisfeature togeta quicker startup with -A
Database changed
mysql>
然后,更新root的密码,SQL如下:
mysql>update usersetauthentication_string=password('root')whereHost='localhost'and User='root'
注意:
①有的版本的mysql中,密码可能存储在password字段中,可以使用"describe user"命令来查看下表结构再 *** 作
②authentication_string的值一定通过password函数来计算(password('root'))
执行结果如下:
Query OK,1row affected,1warning (0.01sec)
Rows matched:1Changed:1Warnings:1
退出mysql(执行sql语句:exit)
最后一步:将mysqld_safe进程杀死,重启mysqld。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)