Mysql数据库合并命令,生产级别的挽救措施
一、起因:
最近试图用Wordpress搭配Git——一款比付费主题更像是付费主题的WordPress免费主题(是的,确实很绕口)建站。
由于操作不当乱改后台设置,外加Wordpress+Git主题bug严重导致站点几乎报废,索性删除源码重来。一顺手把数据库也删了,不过做了备份。(总认为既然网站不稳定了那源码和数据库是都要换的,做备份当然是为了恢复用户数据)
二、试错
过程心惊胆战的,个人对数据库也不是很精通,本来备份数据库可以通过导出实现,无奈phpmyadmin出现了问题,大概是“错误500命令无法执行”。擅长曲线救国的我把数据库中其他表删除了,只留下了Wordpress存储用户数据的表,并将该表重命名,以免后续操作发生冲突。
wp_users、wp_usermeta、wp_comments
wp_users 数据表存储用户的主要数据,该数据表结构类似于wp_posts 和 wp_comments 数据表,存储的是需要经常访问的用户数据
WordPress 把一些附加用户数据保存在了其他数据表中,附加用户属性数据保存在 wp_usermeta 数据表中。
在评论中,未登录用户的数据保存在wp_comments数据表中。
关于Wordpress用户数据库更多请访问https://www.cnblogs.com/kenshinobiy/p/7465969.html
重新安装Wordpress并重新创建Wordpress数据库之后,犯难的问题来了,如何把备份的用户数据迁移到新创建的数据库呢?
使用mysql命令操作吧:
首先无法判断这两个数据库是否有交集,只能提前删除新数据库表中的所有内容,
删除过程略……
然后执行合并
USE [新数据库]
INSERT INTO [新数据的表,要为空]
SELECT * FROM [备份数据库].[备份数据库中的表];
也可以理解为有两个数据库,一个是刚创建的,一个是之前备份的,他们都有共同的xxx表,把新数据库中xxx表清空,把备份数据库中的表内容移进去。
欢迎大佬提出更好的解决方案。
附phpmyadmin报错,求解决