Hits: 3

十年,该换了.

共享主机瘫痪了两天,一惊之下,开始搬家. 先学docker compose, 再奋战lemp分别安装.无论docker还是lemp单装,都不复杂,学习一些linux,docker,vim/nano和nginx/mysql/wordpress的知识后, 基本一蹴而成.困难的是字符串…

经过20天时断时续的钻研, 终于成功,摸出一条自己的路: 字符串和字符序有多个层面, 这些都不重要,重要的是原db和server是什么样, 新的服务器和设置照旧即可.说起来简单, 走过来全是坑啊.

简述结果:

原DB在共享主机, 只能phpmysql简单的操作, 最终探明服务器是utf8mb4的设置,也是defualt的设置,俺那个古老的mysql5.6( 历经host provider升级), 服务器也是utf8mb4的设置, 数据库却是个恐龙芯latin1, 数据表因此有两种, 基本上关键的表都是latin1, 一些后来的plugin的表是utf8.如图:

成功大法:

MySQL服务器cnf不做什么字符组和字符序的定义, default起服务器. create Database时加入字符组和字符序的latin1 的设定.

老服务器用phpmyadmin导出,导出页面保留utf8的设定.新数据库导入, 同样保持utf8的设置,导出导入页面所有设置都不变动.

按照老服务器的wp-config.php的设定, 字符组和字符序都是空的,不设定值.

从古老共享主机迁移mysql/wordpress的中文乱码问题就此解决.ya!

一天后又记: 搭建lemp环境时几乎选择了lnmp一键安装包, 做了些基础调查后,看到5,6年前的博客讨论了其安全问题, 遂弃之. 随敝帚,乃自珍也.

CC BY-NC-SA 4.0 This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.