PHP——连接MySQL报错mysql_connect(): Server sent charset (255) unknown to the client.
文章目录一、问题描述二、解决方法一、问题描述使用PHP5连接MySQL8时报错Warning: mysql_connect(): Server sent charset (255) unknown to the client. Please, report to the developers in xxx on line n,导致连接失败二、解决方法这是以为MySQL默认编码为utf8mb4引起的
·
一、问题描述
使用 PHP5连接MySQL8时报错Warning: mysql_connect(): Server sent charset (255) unknown to the client. Please, report to the developers in xxx on line n
,导致连接失败
二、解决方法
这是因为MySQL默认编码为utf8mb4引起的错误
首先将数据库和数据表所有varchar列的编码方式改回utf8
再找到MySQL的启动配置文件my.ini,此配置文件在MySQL安装的根目录下:
若没有my.ini,请手动新建,其内容见下文
将其内容改为:(重点是修改字符集)
[mysqld]
# 设置3306端口
port=3306
# 设置mysql的安装目录
# 这里是你自定义的
basedir=D:\mysql\mysql-8.0.16-winx64
# 设置mysql数据库的数据的存放目录
# 这里是你自定义的
datadir=D:\mysql\mysql-8.0.16-winx64\data
# 允许最大连接数
max_connections=200
# 允许连接失败的次数。
max_connect_errors=10
# 服务端使用的字符集默认为utf8
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 默认使用“mysql_native_password”插件认证
#mysql_native_password
default_authentication_plugin=mysql_native_password
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8
之后重启mysql服务即可成功通过PHP连接MySQL
更多推荐
所有评论(0)