帝国 CMS 转移数据库方法
照着这篇做完,你能把帝国 CMS 整站数据库从旧服务器完整搬到新服务器,并且网站打开后栏目、文章、会员数据都在。下面按操作顺序拆成六步,涉及后台的路径都按帝国 CMS 7.5 版本写,其他 7.x 版本菜单基本一致。
第一步:备份原站数据库
这一步是把旧库里的数据完整取出来,得到一堆备份文件或一个 SQL 文件。
登录旧站后台,地址通常是 http://你的域名/e/admin/,输入账号密码进入后,走这个路径:左侧菜单「系统」→「备份与恢复数据」→「备份数据」。页面里会列出所有数据表(前缀默认是 phome_),保持全选,把「每卷大小」设为 1024 KB,点击「开始备份」。备份文件会写到 e/data/backupdata/ 目录下。
如果你的服务器上有 phpMyAdmin,也可以直接进 phpMyAdmin,选中整个数据库,点顶部「导出」,格式选 SQL,字符集选 utf8,勾选「添加 DROP TABLE / VIEW / PROCEDURE / FUNCTION」后执行下载。数据量大的话推荐命令行:
mysqldump -u root -p --default-character-set=utf8 --skip-lock-tables 数据库名 > /tmp/empire.sql
注意:备份前先在后台「系统」→「数据更新」→「刷新缓存」,把缓存写回数据库,否则刚改过的内容可能漏掉。
第二步:在新服务器建好空库
这一步是在新机器上准备一个字符集一致的空白数据库,为导入做准备。
用命令行或宝塔面板、phpMyAdmin 新建数据库,字符集必须选 utf8(帝国 CMS 7.5 默认 UTF-8),排序规则选 utf8_general_ci。数据库名、用户名、密码自己定,记下来,下一步要用。
第三步:修改配置文件里的数据库连接
这一步是告诉帝国 CMS「去连哪个库」,改完网站才能找到新数据。
用 FTP 或面板文件管理器打开网站根目录下的 e/config/config.php,找到这几行:
$ecms_config['db']['dbserver']='localhost';
$ecms_config['db']['dbusername']='新库用户名';
$ecms_config['db']['dbpassword']='新库密码';
$ecms_config['db']['dbname']='新库名';
$ecms_config['db']['dbtbpre']='phome_';
把用户名、密码、库名改成第一步建好的。dbtbpre 是表前缀,如果新库导入后前缀和原来不一样,这里必须同步改。
注意:
config.php里还有网站域名、附件地址等参数,换域名的话一并在这里检查「系统」→「系统设置」→「基本参数设置」中的「网站地址」,改完记得保存。
第四步:把数据导入新库
这一步是把备份内容灌进新库,完成后数据就到位了。
如果用后台备份文件:把旧站 e/data/backupdata/ 整个目录拷到新站同位置,确保该目录权限是 777,然后进新站后台「系统」→「备份与恢复数据」→「恢复数据」,页面会列出可用备份,点「恢复」。
如果用 SQL 文件:命令行执行
mysql -u root -p --default-character-set=utf8 新库名 < /tmp/empire.sql
或在 phpMyAdmin 里选中新库,点「导入」,选文件上传执行。
注意:导入时如果报「表已存在」,说明库不干净,先在 phpMyAdmin 里全选删除再导入。
第五步:处理域名和路径变化
这一步解决换域名后图片不显示、链接跳回老站的问题。
进新站后台「系统」→「数据更新」→「批量替换字段值」,选择要处理的表(如 phome_ecms_news),字段选 newstext,把原字符串填老域名,替换成新域名,提交。栏目、专题、自定义页面等表按同样方式各做一遍。
第六步:更新缓存并检查附件
这一步让前台真正显示新数据。
后台走「系统」→「数据更新」→「刷新所有缓存」,再点「更新所有页面」。然后打开首页、栏目页、文章页各看一遍。附件和图片存在 d/ 目录,是独立于数据库的,用 FTP 把旧站 d/ 整个目录传到新站根目录即可。
注意:安装目录
e/install/装完必须删除,否则有被重装的风险。
小结
- 备份用后台「备份与恢复数据」或 mysqldump,字符集统一 UTF-8。
- 新库要先建空库,再改
e/config/config.php里的库名、账号、前缀。 - 换域名必须用「批量替换字段值」替换正文里的老域名。
- 附件目录
d/要单独拷贝,数据库导完不会自动带过来。 - 最后刷新缓存、更新页面,并删除
e/install/。
原文链接:https://www.gj0.com/thread-1171.html
转载请注明出处并保留本声明;内容仅代表作者观点,与本站立场无关。若本文涉嫌侵权,请联系本站处理。