我有一个包含c.1,850行和两列的MySQL表 - ID
(int - not auto-incrementing)和data
(mediumblob)。该表为c.400MiB,许多单独的条目超过1MiB,有些条目大到4MiB。我必须将它上传到典型的Linux共享托管安装。
到目前为止,我遇到了各种尺寸限制。毫不费力地导入数据库其余部分的Bigdump无法处理这个表 - 在不同的地方停止,无论我使用哪种方法(使用SQL或CSV的各种尝试)。使用phpMyAdmin直接导入也失败了。
我现在接受,如果导入要成功,我必须以某种方式拆分表的内容。但是(例如)最后一个CSV在GVIM中显示了1.6m行(当表中只有1,850行时),我甚至不知道从哪里开始。
最好的方法是什么?我必须在导出时使用哪些设置才能使方法有效?
答案 0 :(得分:1)
mysqldump -u username -p -v database > db.sql
将SQL文件上传到您的FTP。
使用您选择的语言(例如:PHP)创建一个脚本,该脚本将调用system / exec命令将SQL文件加载到MySQL数据库中。
nohup mysql -u username -p newdatabase < db.sql &
这将为您在后台运行一个过程。
您可能必须最初运行which mysqldump
和which mysql
以获取可执行文件的绝对路径。