php7连接mysql8
最近因为剁手买了mac所以在mac上搭建lnmp环境。
刚好看到mysql从5.7跳到8,性能据说快上一倍,果断尝鲜!
lnmp基本都弄好了,但是到用php连接Mysql这一步出了岔子。
出错原因:
mysql8使用caching_sha2_password的身份验证机制
以往的验证机制则是mysql_native_password
解决方法:
sudo vim /etc/my.cnf
(mysql8默认没有配置文件,这个得新建)
添加:
[mysqld] default_authentication_plugin=mysql_native_password
但是这样还没完全解决,因为这样只对修改配置并重启Mysql后的新建用户有效
而最初创建的root用户依然是caching_sha2_password的身份验证机制
【修改配置并重启后新建一个用户,可以令其密码与root密码相同,供后续使用(这一步也可以验证配置是否生效,生效的话加密后的字符串应跟root密码不同)】
(新建用户:CREATE USER ‘新用户名’@‘localhost' IDENTIFIED BY ‘密码’;)
(以下修改操作前请备份!!)
这个可以在mysql数据库中的user表直接将root用户的plugin改为mysql_native_password
同时把对应的authentication_string改为新用户加密后的密码
(顺利的话这个时候重启mysql就可以了,如果可以了就不用往下看了)
然而这个时候我又刚好脑抽了,改authentication_string的时候没备份,改下去重启后就连接不上了。
无奈,只好修改密码(后来发现是我原来密码没有删除干净,导致改的密码不对。晕。)
先是修改配置文件:
[mysqld] skip-grant-tables #加了这行 default_authentication_plugin=mysql_native_password
然后重启mysql
这时候可以登录进去修改root密码
alter user 'root'@'localhost'IDENTIFIED BY ‘新密码’;
最后记得去掉skip-grant-tables并重启Mysql
php7连接mysql8的更多相关文章
- php7连接mysql测试代码
php7连接mysql测试代码 <?php $mysqli = new mysqli("localhost", "root", "passwor ...
- 远程连接MYSQL8.0服务器问题
title: 远程连接MYSQL8.0服务器问题 date: 2018-07-07 11:02:26 updated: tags: [MYSQL,坑] description: keywords: c ...
- JAVA连接MYSQL8.0问题
title: java连接mysql8.0问题 date: 2018-07-08 19:27:38 updated: tags: description: keywords: comments: im ...
- SQLyog连接MySQL8.0报2058错误的解决方案
引言 用SQLyog连接MySQL8.0(社区版:mysql-installer-community-8.0.15.0.msi),出现错误2058(Plugin caching_sha2_passwo ...
- php连接mysql8报错如何解决
php版本为5.6,连接mysql8.0时报错,但是连接其他mysql8前的版本是正常的 原因可能是mysql8默认的使用密码认证方式不一样,mysql8.0默认使用caching_sha2_pass ...
- Navicat连接MySQL8+时出现2059报错
当我们连接时,会报2059错误 在用navicat连接MySQL8+时会出现2059错误,这是由于新版本的MySQL使用的是caching_sha2_password验证方式,但此时的navicat还 ...
- navicate 连接mysql8.0,个人踩坑问题汇总
navicate 连接mysql8.0,个人踩坑问题汇总本文目录:1:安装mysql8.0新增全新验证方式,安装如果不修改mysql连接不上2:mysql启动命令问题3:navicate 运程连接My ...
- navicat连接mysql8.0+版本报错2059
ERROR 2059 : Authentication plugin 'caching_sha2_password' cannot be loaded 问题: 连接Docker启动的mysql出现:E ...
- Navicat连接Mysql8.0.17出现1251错误 / 或者Navicat Premium出现2059错误
Navicat连接Mysql8.0.17出现1251错误 重装了电脑之后,好多软件出了问题,经过一系列的插件安装,mysql终于安装好了 但是Navicat又抽筋了~~~额(⊙o⊙)... 在网上查的 ...
随机推荐
- Qt OpenCV::Mat与Qt::QImage相互转换
Mat转QImage QImage mat2qim(Mat & mat) { cvtColor(mat, mat, COLOR_BGR2RGB); QImage qim((const unsi ...
- Linux 系统优化参数总结
系统优化参数总结: net.ipv4.tcp_syncookies = 表示开启SYN Cookies.当出现SYN等待队列溢出时,启用cookies来处理,可防范少量SYN攻击 net.ipv4.t ...
- 苹果联合创始人高调宣布弃用Facebook是什么梗?
这段时间,扎克伯格非常郁闷.泄密丑闻不仅让Facebook股价大跌.引来审查等,还被众多互联网.科技大佬批判.孤立.如,"钢铁侠"马斯克就直接删除了SpaceX 和特斯拉的 Fac ...
- SSL_CTX结构体
/* 定义在ssl.h头文件中 */struct ssl_ctx_st { SSL_METHOD *method; unsigned long options; unsigned long mode; ...
- Nginx笔记总结三:内核参数优化
net.ipv4.netfilter.ip_conntrack_tcp_timeout_established = 1800 net.ipv4.ip_conntrack_max = 16777216 ...
- 吴裕雄--天生自然KITTEN编程:切换角色
- 8.2.2 使用Java8增强的Iterator遍历集合元素
8.2.2 使用Java 8增强的Iterator遍历集合元素 Iterator接口方法 程序示例 Iterator仅用于遍历集合 Iterator必须依附于Collection对象 修改迭代变量的值 ...
- 移动 H5 首屏秒开优化方案探讨
转载bang大神文章,原文<移动 H5 首屏秒开优化方案探讨>,此文仅仅用做自学与分享! 随着移动设备性能不断增强,web 页面的性能体验逐渐变得可以接受,又因为 web 开发模式的诸多好 ...
- android activity 启动过程分析(source code 4.4)
说实话,android source code从2.3到4.4变化是蛮多的,尤其是media部分,虽然总的框架是没有多大变化,但是找起代码来看还是挺麻烦的.在android里面最受伤的是使用了java ...
- React使用笔记2--创建登录组件
文章目录 最近在学习使用React作为前端的框架,<React使用笔记>系列用于记录过程中的一些使用和解决方法.本文记录搭建登录页面的过程. 根据产品规划划分模块 主要页面逻辑 在这里,本 ...