MAC 解决bash: mysql: command not found 的方法

来源:互联网 发布:java猜数字代码 编辑:程序博客网 时间:2024/05/16 18:22

转载文章点击打开链接

1.用安全模式进入数据库


1.1 打开系统偏好设置,如果你的电脑已经安装mysql,会在下面有一个mysql的按钮。点进去关闭mysql服务。

1.2 打开一个终端,输入一下命令

$ cd /usr/local/mysql/bin$ sudo su 
  • 1
  • 2

然后便可以看到终端命令变成这个开头: sh-3.2# 
输入一下命令

sh-3.2#./mysqld_safe --skip-grant-tables &
  • 1

之后边可以以安全模式进入数据库了。

1.3 现在打开一个新的终端 
输入以下命令:

mysql -u -root
  • 1

然后便会发现你不需要密码就进入数据库了。

2. 修改密码

现在可以看到终端命令变成以mysql开头。 
修改密码这一部分在网上找了很多教程都不对,应该是因为版本不同的问题。 
我装的最新的mysql,测试以后一下这个方法可行。 
接着之前的步骤,在mysql命令下。输入以下命令

UPDATE mysql.user SET authentication_string = PASSWORD('MyNewPass')WHERE User = 'root' AND Host = 'localhost';FLUSH PRIVILEGES;
  • 1
  • 2
  • 3

这样就成功更改密码了。 
之后退出mysql,输入以下命令退出安全模式。

/usr/local/mysql/share/mysql.server start
  • 1

然后在终端输入

$mysql -u root -p
  • 1

进入数据库。

这个时候我还遇到一个问题,就是显示说我的代码过期了。 
错误如下:

#1862 - Your password has expired. To log in you must change it using a client that supports expired passwords. 
  • 1

解决这个问题只需要重新更改一下密码即可。 
在终端输入以下命令,会让你输入老密码和新密码。

/usr/local/mysql/bin/mysqladmin -u root -p passwordEnter password:New password:Confirm new password:
  • 1
  • 2
  • 3
  • 4

原创粉丝点击