Discuz! Board

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 8364|回复: 0

phpMyAdmin导入和恢复大体积SQL文件

[复制链接]

334

主题

337

帖子

1683

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1683
发表于 2016-12-28 15:30:38 | 显示全部楼层 |阅读模式
在使用phpMyAdmin的时候经常用到数据的导入和导出(Export/Import),但是在导入大数据的时候由于php上传文件的限制和脚本响应时间的限制,导致phpMyAdmin无法导入大数据,对于导入大数据到mysql的,我以前使用过使用SHELL的方式导入几百兆的文件到mySQL数据库,但是国内的虚拟主机绝大多数不像DreamHost一样开放SHELL权限,而且多数都是Windows Server服务器。我们自己又没有权限修改php.ini文件,对于这种情况我们可以使用phpMyAdmin提供的$cfg['UploadDir']方法,导入服务器上存在的.sql文件。  首先,找到phpMyAdmin的目录,找到根目录下的config.inc.php文件,然后找到 $cfg['UploadDir'] ,通过注释(Directories for saving/loading files from server)就可以看出这是用来导入服务器上的SQL文件的方法。相对的就是 $cfg['SaveDir'] ,顾名思义就是把导出的SQL文件保存在服务器上的目录中。
  修改这个参数
$cfg['UploadDir'] = 'ImportSQLFile';$cfg['SaveDir'] = 'ExportSQLFile';  然后在phpMyAdmin中建立两个文件夹,ImportSQLFile和ExportSQLFile,一个用作大数据的导入,一个用作数据导出备份。
  然后把我们需要导入的sql文件复制到ImportSQLFile中,上传到服务器上,选择需要导入的数据库名,选择导入(Import),就会发现在文件导入(File to import)的地方多出来一个导入服务器上的SQL文件(web server upload directory)

  通过这种方法可以突破php.ini的上传文件限制,极限我没有试过,我上传的10M .sql文件成功导入到mysql中。
  同理在导出/备份mysql数据的时候也可以直接保存在服务器上,保存到$cfg['SaveDir'] = 'ExportSQLFile';中指定的文件夹中

phpMyAdmin无疑是一款很好的MYSQL管理端程序,很多需要导入大型数据库的朋友不妨试试这个方法,简单实用。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|飞克网 ( 皖ICP备16023507号 )

GMT+8, 2024-4-19 02:17 , Processed in 0.211685 second(s), 21 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表