我需要更改所有数据库的直接访问权限,因为我需要使用外部云中的插件自动备份它们,以便在我的网站被黑客入侵时更快地恢复我的网站。问题是我使用旧版本的托管服务(godaddy)所以我的数据库是在mysql版本5.5中,但为了使它们可访问我需要5.0版本。因此,当我在旧版本中导入它时,我收到此错误:
有没有人遇到过这样的情况?
答案 0 :(得分:1)
MySQL 5.0中不支持utf8mb4。
你可以将数据库更改为在5.5上使用utf8,然后再备份它,这样你就可以在MySQL 5.0上恢复它。
使用ALTER TABLE
和ALTER DATABASE
。请记住,您必须更改数据库默认字符集,每个表的表默认字符集,以及每个表中每个字符串列的字符集!
ALTER DATABASE dbname DEFAULT CHARACTER SET = utf8 DEFAULT COLLATE = utf8_unicode_ci;
ALTER TABLE mytable CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;
-- repeat for each table
但在我看来,使用托管服务或任何不会升级MySQL的环境都是荒谬的。不再支持5.0版。
即使MySQL 5.1更新,它也不再受支持。 5.0和5.1的文档已从他们的网站上删除。
你真的回到了使用MySQL 5.0的历史。你在谈论的是过去两代的软件。
切换托管服务提供商。