mac下安装Mysql5.7.13遇到默认密码的大坑

安装的过程很简单,就直接到官方下mysql dmg,一路下一步就可以装完..

但是带来的问题是,默认密码不为空… mysql -uroot -p 登陆不进去… 直接使用mysqladmin改密码也提示错误.

一般在centos下安装Mysql 5.7版本后,密码应该是放在 ~/.mysql_secret文件里,但是Mac呢 ?各翻遍了所有目录都没找到… 一顿狂Google之后,发现不少老外也在纠结这个问题… 这算不算个坑…

[root@devops ~ ]$ sudo find / -name ".mysql_secret"
find: /dev/fd/3: Not a directory
find: /dev/fd/4: Not a directory

[root@devops ~ ]$ ll /private/var/root/.
total 24
-rw-------   1 root  wheel  2520 11 10 23:31 .sh_history
-rw-------   1 root  wheel  3402 11 10 23:31 .viminfo
drwx------  13 root  wheel   442  9 10 22:23 Library
-rw-r--r--   1 root  wheel     5  1 16  2015 .CFUserTextEncoding
-r--r--r--   1 root  wheel    10  9 10  2014 .forward

那么密码跑哪里去了? 不纠结了,直接把默认密码干掉,再重新配置一个新密码.

首先我们通过 –skip-grant-tables的方式启动mysqld_safe进程 ,这个模式是可以绕过mysql授权.


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

mysql5.7颠覆的事情太多了,已经mysql.user会有个password字段,现在替换成authentication_string了.

authentication_string  | text               | YES  |     | NULL 
password_expired       | enum('N','Y')      | NO   |     | N 
password_last_changed  | timestamp          | YES  |     | NULL
password_lifetime      | smallint(5)        | YES  |     | NULL 
account_locked         | enum('N','Y')      | NO   |     | N 

然后正式改密码,注意姿势 !

mysql> update mysql.user set authentication_string=PASSWORD('123123') where user='root';
Query OK, 1 row affected, 1 warning (0.04 sec)
Rows matched: 1  Changed: 1  Warnings: 1

mysql> flush privileges;
Query OK, 0 rows affected (0.02 sec)

mysql>

这时候Myqsl密码已经修改完了,我们把上面的mysqld进程干掉,通过正常途径起Mysqld服务

mysql -uroot -p

mysql>
mysql> show databases;
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
mysql>
mysql> set password for root@localhost=password('123123');
Query OK, 0 rows affected, 1 warning (0.00 sec)

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (0.01 sec)

mysql>

当你通过skip授权修改的密码,需要再次修改下密码. 也不知道为什么有这个要求.

Your password has expired. To log in you must change it using a client that supports expired passwords.

提示密码过期,那就再次修改

[root@localhost bin]# ./mysqladmin -uroot -p password
Enter password:   //这里输入上面设置的密码
New password:    //重新输入新密码
Confirm new password: //重新输入新密码

问题解决,这样Mysql的密码就改完了.

嵌入式企鹅圈原创团队由阿里、魅族、nvidia、龙芯、炬力、拓尔思等资深工程师组成。百分百原创,每周两篇,分享嵌入式、Linux、物联网、GPU、Android、自动驾驶等技术。欢迎扫码关注微信公众号:嵌入式企鹅圈,实时推送原创文章!

这里写图片描述

技术交流学习或者有任何问题欢迎加群:154514123

这里写图片描述

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
很高兴回答你的问题!以下是MySQL 5.7.13安装教程: 步骤 1: 下载 MySQL 安装包 首先,你需要从 MySQL 官方网站下载适用于你的操作系统的 MySQL 5.7.13 安装包。访问 https://dev.mysql.com/downloads/mysql/5.7.html,在 "MySQL Community Server" 下载栏中选择适合你操作系统的版本。 步骤 2: 安装 MySQL 1. 打开下载的安装包,双击运行安装程序。 2. 阅读并接受许可协议。 3. 在 "Choosing a Setup Type" 页面,选择 "Custom" 自定义安装类型,以便选择安装路径和组件。 4. 在 "Select Products and Features" 页面,选择你需要安装的组件。通常情况下,都会默认选择 "MySQL Server"。你可以根据需要选择其他组件,然后点击 "Next" 继续。 . 在 "Check Requirements" 页面,检查系统是否满足安装要求。如果有任何问题,请解决它们后继续。 6. 在 "Installation" 页面,选择安装类型。如果你是第一次安装 MySQL,选择 "New installation"。如果你是升级现有的 MySQL 版本,请选择 "Upgrade"。 7. 在 "Installation" 页面,选择你想要安装的位置。默认情况下,它会安装在 "C:\Program Files\MySQL\MySQL Server 5.7" 目录下。 8. 在 "Accounts and Passwords" 页面,设置 root 用户的密码。确保密码安全,并记住它。 9. 在 "Windows Service" 页面,选择是否将 MySQL 安装为 Windows 服务。如果你打算在 Windows 启动时自动启动 MySQL,请选择 "Server Machine"。 10. 在 "Apply Server Configuration" 页面,选择适合你的用途的配置类型。你可以选择 "Development Machine" 或 "Server Machine"。 11. 在 "Performing Configuration" 页面,等待 MySQL 的配置完成。 12. 在 "Product Configuration" 页面,根据需要选择是否要启动 MySQL Workbench。 13. 在 "Completing the MySQL Server 5.7 Setup Wizard" 页面,点击 "Finish" 完成安装。 步骤 3: 验证安装 1. 打开命令提示符或终端窗口。 2. 输入以下命令验证 MySQL 是否成功安装: ``` mysql -V ``` 如果成功安装,将显示 MySQL 的版本信息。 恭喜你!你已经成功安装MySQL 5.7.13。现在你可以开始使用它来创建和管理数据库了。希望这个教程对你有帮助!如果还有其他问题,请随时提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值