时间:2021-07-01 10:21:17 帮助过:20人阅读
在使用phpMyAdmin的时候经常用到数据的导入和导出(Export/Import),但是在导入大数据的时候由于php上传文件的限制和脚本响应时间的限制,导致phpMyAdmin无法导入大数据,对于导入大数据到mysql的,我以前使用过使用SHELL的方式导入几百兆的文件到mySQL数据库(原文),但是国内的虚拟主机绝大多数不像DreamHost一样开放SHELL权限,而且多数都是Windows Server服务器。我们自己又没有权限修改php.ini文件,对于这种情况我们可以使用phpMyAdmin提供的$cfg['UploadDir']方法,导入服务器上存在的.sql文件。
第一:
修改PHP.ini
file_uploads on 是否允许通过HTTP上传文件的开关。默认为ON即是开
upload_tmp_dir 文件上传至服务器上存储临时文件的地方,如果没指定就会用系统默认的临时文件夹
upload_max_filesize 20m 望文生意,即允许上传文件大小的最大值。默认为2M
post_max_size 30m 指通过表单POST给PHP的所能接收的最大值,包括表单里的所有值。默认为8M
修改后一定要重新启动电脑或者重新启动php
其次,找到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)
bitsCN.com