Andy's Blog » cpanel, cpanel上传mysql » 用cPanel向虚拟主机导入大型MySQL数据库

用cPanel向虚拟主机导入大型MySQL数据库

再也不用为上传数据库苦恼 - 用cPanel向虚拟主机导入大型数据库

大家都知道phpMyAdmin导入数据库有尺寸的限制,而且时间稍长就会time out导入失败。
网上也有各种软件用来导入,通常采用切割sql文件为多个小包的方法实现,繁琐而成功率也不是很高的。
如果你的数据库较大,你就会常常烦恼。

我一直用SSH直接登录到虚拟主机上直接运行如下命令来导入的:

mysql -u 用户名 -p口令 [-h 数据库主机] 数据库 < 数据库备份.sql

不过很多空间提供商都不给开放SSH或telnet权限。

突然想到可以用crontab来运行命令呀。测试一下成功了。

  1. 通过FTP上传你的备份SQL文件,放在根目录下就可以了。
  2. 进入你的cPanel,找到Cron Jobs 图标,点击进去,然后选Advanced (Unix Style) (呵呵我比较习惯unix哈)。
  3. 因为只需要运行一次,所以Minute, Hour, Day, Month 都填入准备运行的具体时间,留两分钟余量就行(如果虚拟主机不在本地,可以在FTP上查看一下主机时间), Weekday填*号算了。
  4. Command 填待运行的命令,就是导入命令:

    mysql -u 用户名 -p口令 [-h 数据库主机] 数据库 < 数据库备份.sql

  5. 在phpMyAdmin里监视导入情况。

速度很快,1G的数据库也就几分钟吧。

Technorati : , ,

Incoming search terms:

Tags: mysql, cpanel

本文地址: http://www.21andy.com/new/20060916/429.html

15 评论 to “PHP开源CMS之MODx”

  1. xobu 于 2006-09-17 23:37:24 发表:

    这个是好东西,学到了,多谢

  2. 导入大于2MB的MySQL备份文件程序 - ☆欧欧☆ 于 2006-11-13 16:45:37 发表:

    [...] 另:用cPanel向虚拟主机导入大型MySQL数据库 再也不用为上传数据库苦恼 - 用cPanel向虚拟主机导入大型数据库 [...]

  3. gg 于 2007-01-13 00:07:25 发表:

    问题是有些服务器的cPanel连 crontab 功能都不对外提供,那就傻眼了...

  4. Andy 于 2007-01-13 14:50:18 发表:

    一般有CPanel都会提供crontab的
    hostgator,bluehost,ixwebhosting都有

  5. 互联网|SEO--SingYang的蜘蛛生活 于 2007-04-02 15:27:02 发表:

    用cPanel向虚拟主机导入大型MySQL数据库...

    最近bluehost的数据库管理一直让我很头痛,今天终于找到了一篇很不错的文章,收藏了,顺便感谢下文章
    再也不用为上传数据库苦恼 - 用cPanel向虚拟主机导入大型数据库
    大家都知道phpMyAdmin导入数....

  6. awe 于 2008-01-15 17:38:04 发表:

    我没有成功.请问ftp上传到www上一级目录?还是www里面? 能自动找到.sql文件么?我怎么不成功呢?

  7. 站长向前 于 2008-07-10 20:56:55 发表:

    andy老大说的
    phpMyAdmin也能做到 主要问题其实是http上传文件大小的问题
    建议andy老大看看phpMyAdmin配置文件……
    想像一下 假设你的.sql文件已经在空间了
    phpMyAdmin 又能直接从服务器目录读入.sql文件……
    ===============================

    这个是php.ini设置的问题
    要么把上传设置得足够大
    要么搞支持大文件上传的东西(有php+flash能支持大文件)
    要么象上面说的一样 假设.sql文件已经在空间了(ftp? 叫给客服帮传……)
    也就不用http的限制 至于执行时间那个 貌似好办

    ===============================

    所以 phpmyadmin设置如下

    1.首先在phpmyadmin安装目录下建立一个目录,比如叫caoxingk

    2.在config.default.php(不同版本文件名不一样 但要改的都是$cfg['UploadDir']和$cfg['SaveDir'])
    $cfg['UploadDir'],这个变量定义保存导入文件存放的目录,
    $cfg['SaveDir']定义的是数据导出时 sql文件的存放目录,这里都定义为caoxingk

    $cfg['UploadDir'] = 'caoxingk';
    $cfg['SaveDir'] = 'caoxingk';

    登陆phpmyadmin 直接选取已经上传的sql文件 进行导入操作^_^
    同样导出也一样直接选择导入到空间的caoxingk目录然后找时间下载回来就是
    要注意caoxingk目录的权限,saveDir设置的目录要能让php脚本往里边写东西。
    最后的就是操作完了,必要的话清空这目录,防止数据被别人下载 或者用apache控制目录访问权限也可。

    这样只涉及ftp和目录权限设置(脚本运行时间好说)
    SSH或telnet权限的问题也可以解决

    向前我经常是自己在空间装pwd用 只是权限不是DBA而已
    自己装的比IDC装的要顺手
    ================================
    废话比较多 andy老大见谅

  8. 站长向前冲 于 2008-07-10 21:01:32 发表:

    不过貌似就不是用phpmyadmin传的sql文件了
    phpmyadmin只是充当了个执行sql命令的角色

  9. 玖伍贰柒 于 2009-03-15 18:08:22 发表:

    学习了,哈哈

  10. qe 于 2009-03-16 11:04:47 发表:

    請問日期 到底要填寫什麼才能夠立即執行?

  11. qe 于 2009-03-16 11:57:20 发表:

    我也沒辦法成功 寫的不清不楚的~

  12. 用cPanel向主机导入大型MySQL数据库方法 | 博客外贸网店专业主机 | GegeHost 于 2009-08-05 13:30:14 发表:

    [...] 速度很快,1G的数据库也就几分钟吧。 来源链接 [...]

  13. qq 于 2009-08-15 10:55:27 发表:

    也没看懂啊,比如我的虚拟主机是higes 数据库为database user p 123456
    具体是不是mysql-user-123456[-higes]database<备份.sql?
    还是mysql-higes_user-123456[-higes]higes_database<备份.sql
    期待给我一个回复!
    非常感谢!

  14. 在cPanel向虚拟主机导入大容量MySQL数据库方法 | WordPress使用教程与分享 于 2009-08-22 12:57:22 发表:

    [...] 速度很快,1G的数据库也就几分钟吧。 来源链接 [...]

  15. 求索阁 » 用cPanel向主机导入大型MySQL数据库方法 于 2010-07-30 15:00:34 发表:

    [...] 来源链接 [...]