Mac安装Mysql 8.0.13、修改root密码、Navicat Premium连接

先diss下自己,其实mac利用brew安装mysql还是比较简单的。

但是这次安装,只要遇到问题我就网上搜,搜索结果一大堆解决方法,本来问题比较明朗,但是搜的多了,就会出现其他连锁反应。

【朋友超哥曾经说过:“走的太远 容易忘记回去的方向,写的太多 容易忘记原有的逻辑......”】

自己没有冷静的思考问题,盲目的去按照别人的建议去操作,最后乱七八糟的,也许也是自己技术能力不过关的原因之一吧。

所以在自己踩过太多坑的基础上,写下此文mac利用brew安装mysql 8.0.13的过程。

一、官网下载Mysql 8.0.13

下载地址:https://dev.mysql.com/downloads/mysql/

进入此网站,会自动匹配到你的操作系统,可直接下载.dmg文件。

二、利用brew安装mysql

Homebrew是macOS缺失的软件包管理器,使 macOS更完整,譬如可以安装Apple Store没有预装,但你需要的东西。

更多详情请查看Homebrew官网:https://brew.sh/index_zh-cn.html

一定要安装Homebrew成功。

 

安装Mysql前,需要先把之前的文件清理干净(如果第一次安装,此步骤可忽略)

执行下列命令

  • sudo rm /usr/local/mysql

  • sudo rm -rf /usr/local/mysql*

  • sudo rm -rf /Library/StartupItems/MySQLCOM

  • sudo rm -rf /Library/PreferencePanes/My*

  • 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.*

 

利用brew安装mysql,输入如下命令:

  • brew install mysql

 

80b1497098f0251a7984c9491c5f41f8d31.jpg

三、常用的brew命令

# 获取service列表

  • brew services list

# 重启mysql服务

  • brew services restart mysql

# 停止mysql服务

  • brew services stop

四、终端登录mysql

刚才的截图中有提到,brew安装的mysql,root用户登录没有密码,不用输入密码,直接回车即可

b452b779dc4fce703e0573a93be467777a5.jpg
 

五、查询用户密码:

查询用户密码命令:
  1. use mysql;
  2. select host,user,authentication_string from user;
 
  • host:允许用户登录的ip‘位置’%表示可以远程;
  • user:当前数据库的用户名;
  • authentication_string:用户密码【重点字段,后面有提到此字段】;

a5680767ea537d8d2952d205f790f066841.jpg

六、设置(或修改)root用户密码

默认root密码为空的话 ,下面使用navicat就无法连接,所以我们需要修改root的密码。
 
“此处踩过N多坑,后来查阅很多才知道在mysql 5.7.9以后废弃了password字段和password()函数;而改为authentication_string字段表示用户密码。”
 
下面直接放出目前修改root密码的步骤:

一、如果当前root用户authentication_string字段下有内容,需要先将其设置为空。若已经是为空直接进行步骤二。

  • use mysql;
  • update user set authentication_string=''  where user='root';
二、使用ALTER修改root用户密码,如下:
  • ALTER user 'root'@'localhost' IDENTIFIED BY '新密码';
  此处有两点需要注意:
  1. 不需要flush privileges来刷新权限。
  2. 密码要包含大写字母,小写字母,数字,特殊符号。
   60967f3f23691192a6f532e33d70a381727.jpg
 
修改成功后; 退出重新使用用户名密码登录即可。
 
注意: 一定不要采取 如下形式修改密码:
  1. use mysql;  
  2. update user set authentication_string="新密码" where user="root";  
因为这样会给user表中root用户的authentication_string字段下设置了newpassword值;
当再使用ALTER USER 'root'@'localhost' IDENTIFITED BY 'newpassword'时会报错的;
因为authentication_string字段下只能是mysql加密后的41位字符串密码;其他的会报格式错误;
*THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE
【此段摘自文章: https://www.cnblogs.com/kawask/p/9171966.html

七、利用navicat连接本地数据库  

第一次连接时,明明账号密码都正确,连接还是报错提示。
MySQL said: Authentication plugin 'caching_sha2_password' cannot be loaded: dlopen(/usr/local/lib/plugin/caching_sha2_password.so, 2): image not found
 
分析下:在MySQL 8.0.4版本之前,执行:SET PASSWORD=PASSWORD('[新密码]');
但是MySQL 8.0.4开始,这样默认是不行的。
因为之前,MySQL的密码认证插件是“mysql_native_password”,而现在使用的是“caching_sha2_password”。
 
所以我们这里需要再修改一次root密码。
先登录进入mysql环境:执行下面三个命令。(记得带上分号)
  • use mysql;
  • ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码';
  • FLUSH PRIVILEGES;
完美解决啊
b89c5c86e3d1d8e6edd3f4fbc2d67af58a7.jpg
 

转载于:https://my.oschina.net/niepanLs/blog/2876277

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值