网站还原中如何用phpMyAdmin导入和恢复大体积SQL文件

2017-04-13 20:59:10 dedecms

  

在使用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管理端程序,很多需要导入大型数据库的朋友不妨试试这个方法,简单实用。