标签归档:mysql

Mac下彻底卸载MySQL方法

在OSX中安装Mysql如果一旦出现错误,很难卸载,需要手动删除部分Mysql运行和配置文件,如下为删除相关文件的shell,可能不存在,但尽量查找并删除,避免出现一些莫名问题。

先停掉mysql服务,然后执行下面命令

sudo rm /usr/local/mysql
sudo rm -rf /usr/local/mysql*
sudo rm -rf /Library/StartupItems/MySQLCOM
sudo rm -rf /Library/PreferencePanes/My*
vim /etc/hostconfig  (and removed the line MYSQLCOM=-YES-)
rm -rf ~/Library/PreferencePanes/My*
sudo rm -rf /Library/Receipts/mysql*
sudo rm -rf /Library/Receipts/MySQL*
sudo rm -rf /var/db/receipts/com.mysql.*

 

mac OSX 系统重置MySql root 密码

第一步:停止MySql服务,在系统偏好设置里停止或者用命令行的方式:

sudo /usr/local/mysql/support-files/mysql.server stop

然后需要在安全模式下启动MySql:

sudo /usr/local/mysql/bin/mysqld_safe --skip-grant-tables

这是一个持续运行的命令,知道进程结束,所以我们打开另一个终端窗口,无密码登录MySql

mysql -u root
UPDATE mysql.user SET Password=PASSWORD('my-new-passowrd') WHERE User='root';
FLUSH PRIVILEGES;
\q

如果你使用MySql 5.7版本,那么你必须使用另一种命令而不是上面这段。因为在MySql 5.7中,mysql.user表中的password字段已经被移除,现在密码字段名称是‘authentication_string’.

mysql -u root
UPDATE mysql.user SET authentication_string=PASSWORD('my-new-password') WHERE User='root';
FLUSH PRIVILEGES;
\q

现在我们需要重新启动MySql服务。

sudo /usr/local/mysql/support-files/mysql.server start

当以上所有步骤进行完之后,就可以使用新的密码登录root账号了

mysql -u root -p
********  // 输入上面设置的密码即可

正常情况mysql应该可以正常登录了,接下来执行个小操作看看都有哪些数据库吧

mysql> show databases;

可能会报一下错误:

ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.

继续执行以下命令即可解决:

SET PASSWORD = PASSWORD('root');

此时一切顺利的话应该会返回一下内容:

Query OK, 0 rows affected, 1 warning (0.01 sec)

到此时mysql的密码应该算是完全重置了,而且可以正常进行任何操作,也可以通过GUI客户端连接数据库了。再次执行下”show databases;”试试吧~