站点是阿里云->云虚拟主机, PHP版本是5.5, MySQL版本是5.1.
然而MySQL是从5.5.3开始支持Emoji的。
1. 导出MySQL数据库
在数据库信息
对应的数据库后面点击管理
.直接用阿里云提供的工具DMS通过WEB登录MySQL. 注意DMS第一项的URL后面需带端口输入,默认是:3306
. 选择导出, 选择所有表和所有配置,然后点击导出.
Typecho的数据库不大,很快就全部导出了.
2. 升级MySQL数据库
在数据库信息
对应的数据库后面点击变更数据库
, 只有一个5.7的MySQL可升级. 然后确定后, 提示升级后数据库会清零, 然后所有的配置信息都会变更. 本质上是删掉当前数据库又重建了一个.
点击确定,升级完毕.
3. 重置数据库密码
在数据库信息
新升级的数据库后面点击重置密码
进行重置.
4. 导入MySQL数据库
再次使用新的数据库地址/用户名/密码, 用DMS登录数据库, 选择导入
,将刚才导出的文件重新导入.
5. 升级Typecho数据表为UTF8mb4
在命令窗口
中输入下面的命令并执行.
alter table typecho_comments convert to character set utf8mb4 collate utf8mb4_unicode_ci;
alter table typecho_contents convert to character set utf8mb4 collate utf8mb4_unicode_ci;
alter table typecho_fields convert to character set utf8mb4 collate utf8mb4_unicode_ci;
alter table typecho_metas convert to character set utf8mb4 collate utf8mb4_unicode_ci;
alter table typecho_options convert to character set utf8mb4 collate utf8mb4_unicode_ci;
alter table typecho_relationships convert to character set utf8mb4 collate utf8mb4_unicode_ci;
alter table typecho_users convert to character set utf8mb4 collate utf8mb4_unicode_ci;
查看有没有升级成功, 可以用下面的命令:show create table <表名>;
6. 修改config.ini.php文件
通过ftp下载htdocs
文件夹里的config.ini.php
,在最后面/** 定义数据库参数 */
里修改数据库为最新的参数. 包括host
, user
, password
, database
, 注意charset
需要修改为utf8mb4
正常情况下不需要重启即可生效.