WordPress导入数据库出现”Unknown collation: ‘utf8mb4_unicode_ci”错误的解决办法

从WordPress4.2版本开始,如果我们在MYSQL5.1版本数据中导出的数据编码是带有utf8mb4格式的,如果我们搬迁网站复原数据的时候,MYSQL5.5等高版本数据库导入到MYSQL5.1低版本的时候会出现"Unknown collation: 'utf8mb4_unicode_ci"错误问题,以前是没有这个问题的,从WP4.2开始才有的。

要解决这个问题,如果我们使用的VPS/服务器,可以类似老左昨天的"Linux CentOS6环境下MySQL5.1升级至MySQL5.5版本过程"方法进行升级MYSQL数据库版本,这样就不会存在不兼容问题,但是如果我们使用的虚拟主机或者升级MYSQL存在一定的技术活,要是处理错误还真的比较麻烦。我们这里可以在导出数据库的时候选择兼容版本。

第一、备份数据

我们在升级和导入数据之前,需要将已有的主机/服务器中的网站数据进行备份。

第二、导出兼容版本数据库

进入PHPMYADMIN,我们导出数据库的时候看下面界面。

解决WordPress导入数据库”Unknown collation: ‘utf8mb4_unicode_ci”错误

从WordPress4.2版本开始,如果我们在MYSQL5.1版本数据中导出的数据编码是带有utf8mb4格式的,如果我们搬迁网站复原数据的时候,MYSQL5.5等高版本数据库导入到MYSQL5.1低版本的时候会出现"Unknown collation: 'utf8mb4_unicode_ci"错误问题,以前是没有这个问题的,从WP4.2开始才有的。

要解决这个问题,如果我们使用的VPS/服务器,可以类似老左昨天的"Linux CentOS6环境下MySQL5.1升级至MySQL5.5版本过程"方法进行升级MYSQL数据库版本,这样就不会存在不兼容问题,但是如果我们使用的虚拟主机或者升级MYSQL存在一定的技术活,要是处理错误还真的比较麻烦。我们这里可以在导出数据库的时候选择兼容版本。

第一、备份数据

我们在升级和导入数据之前,需要将已有的主机/服务器中的网站数据进行备份。

第二、导出兼容版本数据库

进入PHPMYADMIN,我们导出数据库的时候看下面界面。

选择自定义导出方式。

看上图,在最大程度兼容数据库选项中选择MYSQL40,然后导出数据库我们再导入到低版本的MYSQL中是没有问题的。如果有出现乱码问题,我们将:

代码如下:

define('DB_CHARSET', 'utf8mb4');

改成

代码如下:

define('DB_CHARSET', 'utf-8');

因为utf8mb4需要在5.5以上版本兼容,如果我们是新安装VPS网站环境,建议还是直接将MYSQL安装/升级到5.5及以上版本,这样就不至于出现这样的问题。

以上内容就是本文给大家介绍的有关WordPress导入数据库出现”Unknown collation: ‘utf8mb4_unicode_ci”错误的解决办法,希望对大家有所帮助。

(0)

相关推荐

  • 使用wordpress的$wpdb类读mysql数据库做ajax时出现的问题该如何解决

    无聊做了个www.jiazhuangma.com,技术不过关写不好后台,就想直接读wordpress里的数据.做ajax读后台数据时在网上随便搜了一段代码使用wordpress $wpdb类读mysql数据库,就是这么一随便,搜到了别人的去头去尾的code,开始了我的改错之旅. 主要问题有: 1,non-object 2,json中汉字,/被转码 3,chrome可以正常访问php文件,ie显示http 404,ajax时头部显示404,但是响应正文正确,是我想要的json. 先贴上网上搜到的代

  • 在WordPress中获取数据库字段内容和添加主题设置菜单

    get_option() 函数使用技巧 get_option()这个函数,实际上我们在整合后台功能的时候经常会用到的一个函数,主要用来从 WordPress 博客数据库 option 表中取得我们想要的字段内容的一个函数,在目前大部分的主题中,只要是主题集成了后台控制页面,也大都用到了这个函数,虽然 WP 给了我们很多方法去临时存储我们对主题的设置,但是用比较稳定的数据库去存储主题设置还是大部分主题作者的首选. get_option() 函数的解释.用法网上还是有很多中文文献的,包括官方文档该函

  • 简单了解WordPress开发中update_option()函数的用法

    函数介绍 update_option()用于更新数据表中存在的选项值.该函数可取代add_option,但不及add_option灵活.update_option会检查并判断选项是否已经存在.如果不存在,用add_option ('option_name', 'option_value')添加选项.除非用户需要指定add_option的选项参数,否则update_option()是一个可同时添加和更新选项的两用函数. 注意:wp_load_alloptions将要加载(或不加载)某个选项时,up

  • WordPress导入数据库出现”Unknown collation: ‘utf8mb4_unicode_ci”错误的解决办法

    从WordPress4.2版本开始,如果我们在MYSQL5.1版本数据中导出的数据编码是带有utf8mb4格式的,如果我们搬迁网站复原数据的时候,MYSQL5.5等高版本数据库导入到MYSQL5.1低版本的时候会出现"Unknown collation: 'utf8mb4_unicode_ci"错误问题,以前是没有这个问题的,从WP4.2开始才有的. 要解决这个问题,如果我们使用的VPS/服务器,可以类似老左昨天的"Linux CentOS6环境下MySQL5.1升级至MyS

  • Ubuntu VPS中wordpress网站打开时提示”建立数据库连接错误”的解决办法

    一.发现问题 在尝试编辑博客站点的Wordpress主题时,突然发现博客站点无法连接:刷新后提示"建立数据库连接错误"之类的错误.自然想到是mysql可能出错了,所以就登陆了VPS主机,尝试启动mysql服务,但是提示failed. 二.解决方法 1.打开/var/log/mysql/error.log文件,查看出错日志.在阅读日志时发现第一条错误提示是:[ERROR] Can't open the mysql.plugin table. Please run mysql_upgrad

  • Oracle数据库ORA 54013错误的解决办法

    ORA-54013: 不允许对虚拟列执行 INSERT 操作 这是Oracle 11 的新特性 -- 虚拟列. 在以前的Oracle 版本,当我们需要使用表达式或者一些计算公式时,我们会创建数据库视图,如果我们需要在这个视图上使用索引,我们会创建基于函数的索引.现在Oracle 11允许我们直接在表上使用虚拟列来存储表达式.虚拟列的值是不存储在磁盘的,它们是在查询时根据定义的表达式临时计算的.我们不能往虚拟列中插入数据,我们也不能隐式的添加数据到虚拟列,我们只能使用物理列来插入数据.然后可以查询

  • 解决SQL SERVER数据库备份时出现“操作系统错误5(拒绝访问)。BACKUP DATABASE 正在异常终止。”错误的解决办法

    SQL SERVER数据库进行备份时出现"操作系统错误5(拒绝访问).BACKUP DATABASE 正在异常终止."错误.我们应该如何解决这个问题?小编今天为大家推荐一个解决办法. 一般备份文件选择的目录为磁盘根目录或备份所选分区未授予sqlserver用户读写权限时会出现此错误. 解决办法就是给sqlserver用户授予权限: 选择要备份的文件夹 ,右键-->属性-->安全-->看下"组或用户"是否包涵Authenticated Users 这

  • 将MySQL从MyISAM转换成InnoDB错误和解决办法

    后来在做WordPress,一开始还不知道原来WordPress用的是InnoDB数据引擎,于是在原来的数据库里面就建了一个数据库,一开始也没发觉问题,安装,导入sql,都没问题,当时也没多想.直到这几天因为又要装多一个WordPress,用phpmyadmin访问数据库多一点,问题来了.老是一访问WordPress的数据库,就弹出错误提示"Mysqld-nt.exe应用程序错误:"0x005346c4"指令引用的"0x00786000"内存,该内存不能为

  • iOS中打包上传常见的错误与解决办法

    一.ERROR ITMS-90535 首先这个原因导入了其他第三方导致的问题,首先找到友盟库里面的腾讯API,找到其中的info.plist文件: 找到箭头所指向的一行,随后删掉 这一行 就可以了: 二.ERROR ITMS-90635 这个是由于项目中有使用到Cocoapods导入第三方的库使用bitcode造成的,此种错误我在网上找到了三种解决办法: 方法一 项目->targets->enable bitcode->no pods->project->enable bit

  • MySQL数据库监控软件lepus使用问题以及解决办法

    在使用lepus3.7监控MySQL数据库的时候,碰到了以下几个问题,本博客给出了这些问题产生的原因,以及相应的解决办法. 1. 问题1:php页面无法连接数据库 直接使用php程序执行php文件,可以连接mysql,但是在httpd中同样的php页面无法连接mysql. lepus的web程序(PHP代码)无法连接数据库时,web界面上什么操作也无法继续. 为此编写了最简单的PDO连接测试代码: php代码如下: [x@coe2coe lepus]$ cat mysql.php <?php t

  • 详解java.lang.NumberFormatException错误及解决办法

    前言: 在做后台时用的jsp开发,在页面向controller传参时用String接收的参数,但是数据库实体中jies接收该参数时是int类型,做了一下强制转换,但是没有判断去空格,结果页面加载时就报500错误了. 错误截图: 在报错后注意分析报错信息,如上图提示在ShopController.java 的92行出错了,那么错误就很容易定位了,去看那里的代码. 错误关键字 java.lang.NumberFormatException 这句话明确告诉了我们是数字格式异常,接着后面有 null 提

  • MySQL出现this is incompatible with sql_mode=only_full_group_by错误的解决办法

    目录 这个就是错误截图 出现原因: MySQL的版本问题 解决办法:两种 第一种:修改MySQL的配置文件 第二种方法:修改自己的sql 总结 这个就是错误截图 出现原因: MySQL的版本问题 MySQL 5.7.5以上版本,实现了对功能依赖的检测.如果启用了only_full_group_by SQL模式(默认启用),那么MySQL就会拒绝执行 select list.HAVING condition或ORDER BY list引用既不在GROUP BY子句中被命名,也不在功能上依赖于GRO

  • mysql免安装版1067错误终极解决办法图文教程

    [从笔记本到pc] 笔记本一直都使用MySQL免安装版5.6.17,使用如下方法安装: 今天把同一个zip包传到pc上,按上面的方法安装居然报1067,按上面方法多次尝试还是不行. 百度,google查半天还是不行,最终折腾到一个好办法,应该可以一劳永逸的解决这个问题. [windows事件查看] 我的电脑--此电脑--右键管理--计算机管理--系统工具--事件查看器--Windows日志--应用程序--找错误标志,如下图 发现提示3306被占用 [杀掉占用程序] 通过netstat -ano查

随机推荐