船说 CMS 数据库恢复教程是什么
学完这篇,你能独立完成一次船说 CMS 的数据库恢复:先备份现状、再导入备份文件、最后验证站点能正常打开。
船说 CMS 是常见的 PHP + MySQL 建站系统,它的文章、栏目、会员、后台账号密码这些内容全存在 MySQL 数据库里,网站目录里只有程序代码和模板。所以「数据库恢复」指的是:把一份之前导出的 .sql 备份文件,重新导入到 MySQL 数据库里,让网站数据回到备份时的那一刻。常见触发场景是误删数据、换服务器、升级失败回滚。
第一步:确认你手里有什么
这一步要弄清备份文件的来源和格式,决定后面用哪种导入方式。打开你的备份文件,常见三种:
.sql结尾的纯文本文件(mysqldump 或 phpMyAdmin 导出的),最常用;.sql.gz/.zip,解压后还是.sql;- 宝塔面板
/www/backup/database/目录下的定时备份,同样是.sql或.sql.gz。
注意:如果备份文件打开后是乱码二进制,说明它不是数据库备份,可能是整站打包文件,别往数据库里导。
第二步:找到数据库连接信息
这一步要拿到数据库名、用户名、密码和表前缀,否则你连不上、也对不上表。登录服务器或 FTP,进入船说 CMS 的网站根目录,在文件管理器里搜索包含 DB_HOST、DB_NAME、DB_USER、DB_PWD、tablepre 这类关键词的文件,通常是 config.php、data/config.php 或 application/database.php 之一。打开后记下这几个值。
如果没有连接信息,去宝塔面板「数据库」页面(宝塔 8.x:左侧菜单「数据库」)看数据库名和用户名,点「改密码」可以重设密码。
注意:表前缀必须和备份文件里的表名一致。备份 SQL 里能搜到
CREATE TABLE \xxx_article\`这类语句,其中xxx_` 就是表前缀,务必和配置文件里的值一样。
第三步:先备份当前数据库,再动手恢复
这一步是保命操作,恢复失败还能退回去。在服务器命令行执行(把方括号内容换成你的实际值):
mysqldump -u[用户名] -p[密码] [数据库名] > /tmp/now_backup.sql
没有命令行权限,就用 phpMyAdmin:登录后点左侧数据库名 → 顶部「导出」→ 选择「快速 / SQL」→ 点「执行」,浏览器会下载一个 .sql 文件。
第四步:导入备份文件
这一步把数据真正写回数据库。
小文件(10MB 以内)用 phpMyAdmin:登录 phpMyAdmin → 左侧点选目标数据库 → 顶部「导入」→「选择文件」挑你的 .sql → 「字符集」选 utf-8 → 勾选「允许中断恢复」(可选)→ 点右下角「执行」。看到绿底提示「导入成功,共执行 N 条 SQL 语句」即可。
大文件用命令行(phpMyAdmin 常因上传限制失败):
mysql -u[用户名] -p[密码] [数据库名] < /tmp/backup.sql
注意:导入前先把当前库里的旧表删干净,否则会报「表已存在」。phpMyAdmin 里在数据库页面勾选「全选」→ 下拉菜单选「删除」→ 点「执行」;命令行可用
DROP DATABASE 库名; CREATE DATABASE 库名 DEFAULT CHARSET utf8mb4;。
第五步:清缓存并验证
这一步让网站读到新数据。删除网站根目录下 cache/、runtime/、data/cache/ 这类缓存目录里的文件(保留目录本身和 index.html 之类的占位文件)。然后访问首页、打开一篇文章、登录后台(默认入口一般是 /admin.php 或 /admin/),确认内容和管理员账号都正常。
注意:如果后台密码不对,说明备份时间点较早。可在 phpMyAdmin 里找到管理员表(如
xxx_admin),把密码字段的值替换成一段已知密码的 MD5 值,例如e10adc3949ba59abbe56e057f20f883e对应123456,登录后立刻改密码。
小结
- 船说 CMS 的数据库恢复 = 把
.sql备份导入 MySQL,程序文件本身不参与恢复; - 动手前必须找到配置文件里的库名、账号、密码和表前缀;
- 恢复前先导出一份当前数据,这是唯一的退路;
- 小文件用 phpMyAdmin「导入」,大文件用
mysql < backup.sql; - 导入前清空旧表,导入后清缓存、验证首页和后台。
原文链接:https://www.gj0.com/thread-568.html
转载请注明出处并保留本声明;内容仅代表作者观点,与本站立场无关。若本文涉嫌侵权,请联系本站处理。