找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 525|回复: 2

Discuz! X 数据库转码方案及使用工具(GBK和UTF8互转)

[复制链接]
已绑定手机

3312

主题

1480

回帖

4802

积分

管理员

积分
4802
发表于 2020-8-9 19:00:31 | 显示全部楼层 |阅读模式

马上注册,免费下载更多dz插件网资源。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
注意本工具只兼容到了X2.5,仅供参考,涉及数据库操作一定要备份

convertdb.php

放在Discuz X 系列根目录。
1、会读取config_global.php这个文件中的配置信息。
2、会把配置信息中的整个数据库中的表都做转换,如果有多个应用都在一个库中,需要注意避免把其他表也转了。
3、使用 ALTER TABLE table_name CONVERT TO CHARACTER SET charset 命令进行转换。
4、数据库过大可能转码过程需要很长时间,php会超时,建议使用命令行来进行转码(convertdbcli.php)。

serialize.php 序列化整理工具
放在WEB程序根目录,这步在数据库转码后使用。目前分别做了UCHOME2.0 Discuz! X2 Discuz! X2.5 的兼容处理。

转码步骤:
1、备份数据库
2、使用convertdb.php 进行数据库转码,此步如有权限,可以使用命令行版工具进行。
3、转码后编码对应的程序版本覆盖现有的程序。
4、在配置文件中个更改编码(例如 原来 $_config['db']['1']['dbcharset'] = 'gbk'  改为 $_config['db']['1']['dbcharset'] = 'utf8')
      上面注意一点,在Discuz! X 的配置文件中要更改数据库编码和输出编码,输出编码的utf8 写成 'utf-8'
5、使用序列化整理工具,整理数据库中的序列化字段。







转自 https://www.discuz.net/thread-3443658-1-1.html
我要说一句 收起回复
一花一世界,一叶一追寻。一曲一场叹,一生为一人。
发表于 2020-8-9 19:00:58 | 显示全部楼层
前排支持一下。
我要说一句 收起回复
发表于 2020-8-9 19:01:15 | 显示全部楼层
3.4有人会转吗吗?
我要说一句 收起回复
 懒得打字嘛,点击右侧快捷回复【查看最新发布】   【应用商城享更多资源】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

联系DZ插件网微信客服|最近更新|Archiver|手机版|小黑屋|DZ插件网! ( 鄂ICP备20010621号-1 )|网站地图

您的IP:35.172.164.32,GMT+8, 2023-6-7 21:30 , Processed in 0.149444 second(s), 84 queries , Gzip On, Redis On.

Powered by Discuz! X3.5 Licensed

© 2001-2023 Discuz! Team.

点击联系客服QQ
扫码联系客服微信