WordPress:将 MySQL 数据库导入 MariaDB
Posted
技术标签:
【中文标题】WordPress:将 MySQL 数据库导入 MariaDB【英文标题】:WordPress: Import MySQL database to MariaDB 【发布时间】:2017-08-07 20:10:17 【问题描述】:我想使用 phpMyAdmin 在新服务器上导入 mysql 转储(从 phpMyAdmin 导出)。新服务器在 MariaDB 上运行,每次导入都会跳过并显示错误消息。
MySQL 版本为:5.5.52-log MariaDB 版本为:10.1.21-MariaDB-1~trusty错误消息是#1064。来自文档:
Error: 1064 SQLSTATE: 42000 (ER_PARSE_ERROR)
Message: %s near '%s' at line %d
还有很多关于“未初始化的字符串偏移”的通知。
有什么想法吗?
前 20 行:
SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
SET time_zone = "+00:00";
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;
CREATE TABLE IF NOT EXISTS `wp_commentmeta` (
`meta_id` bigint(20) unsigned NOT NULL,
`comment_id` bigint(20) unsigned NOT NULL DEFAULT '0',
`meta_key` varchar(255) DEFAULT NULL,
`meta_value` longtext
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
【问题讨论】:
显示文件的前 20 行。您使用哪个 MySQL 版本来创建转储 见上面的行 让我们从运行代码而不是从文档中查看 1064。 我可以解决,请看下面我的回答 【参考方案1】:这有点工作。删除评论中的所有 Backticks,如下所示:
来自
--
-- Dumping data for table `yourTable`
--
到
--
-- Dumping data for table yourTable
--
或删除行
【讨论】:
只有这个吗?有没有办法在导出中删除这些行? Linux?使用这个: $ grep -v "^--- " orgdump.sql >newdump.sql 将删除所有以 "--- " 开头的行 我在没有 cmets 的情况下导出但错误仍然存在 您能否刷新转储文件的顶部行。 这看起来很棒,也适用于我的服务器。如果里面没有秘密,您可以将其压缩并通过电子邮件发送给我,我会为您修复它【参考方案2】:我可以通过删除 cmets 和以下行来解决它:
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;
感谢 Bernd Buffen 的提示!
【讨论】:
以上是关于WordPress:将 MySQL 数据库导入 MariaDB的主要内容,如果未能解决你的问题,请参考以下文章
将 wordpress 元数据导入并转换为 ACF 转发器字段
wordpress导入数据错误MySQL返回:#1273 – Unknown collation:’utf8mb4_unicode_ci’