如何从phpmyadmin复制大型数据库?
如何从phpmyadmin复制大型数据库?
我想在同一服务器上创建我的网站的开发环境。但是我的数据库有7GB,包含479张表,我想将该数据库的副本复制到新的DB中。
我尝试使用PHPmyadmin >>操作 >> 复制数据库到
功能。但每次都失败,并返回错误
Error in processing request Error code: 500 Error text: Internal Error.
请告诉我是否有其他方法/解决方案可以从cpanel复制此数据库到新数据库,请建议。
admin 更改状态以发布 2023年5月24日
限制在phpMyAdmin中?不要一次做太多事情
大数据集不应该被导出(除非是用于备份),相反,导出不带数据的数据库,然后逐个复制一个表(直接从DB到DB)。
导出/导入数据库结构
首先,通过phpMyAdmin仅导出数据库结构(在导出选项中取消勾选数据)。然后将其导入新数据库名称。
或者,您可以使用诸如以下内容的工具生成类似以下内容的语句,一旦创建了DB。但这种方法的问题是可能会丢失约束、存储过程等。
CREATE TABLE [devDB].[table] LIKE [prodDB].[table]
逐个复制数据表
使用良好的编辑器创建您需要的470个插入语句。从表名列表开始,使用熟悉的查找和替换。
INSERT INTO [devDB].[table] SELECT * FROM [prodDB].[table];
这可能会阻塞,具体取决于您的环境。如果是这样,请删除并重新创建dev数据库(或通过phpMyAdmin清空所有表)。然后,逐个运行一些表的INSERT
命令。
数据库管理需要CLI
您面临的真正问题是,您正在尝试进行数据库管理,却没有访问命令行界面。有效迁移大型数据集的复杂详细信息很多,其中大部分只能使用mysqldump等工具解决。