如何去除phpmyadmin对导入SQL文件2M的限制

一、修改c:/windows/php.ini文件。
如果是Win2000的机器,应该是c/winnt/php.ini,用写字板打开php.ini文件:

1 、查找post_max_size,指通过表单POST给PHP的所能接收的最大值,包括表单里的所有值,默认为8M,看你自己需要进行改变。
2 、查找File Uploads,首先确认file_uploads = on ;是否允许通过HTTP上传文件的开关,默认为ON即是开。 upload_tmp_dir ;
查找upload_max_filesize ;即允许上传文件大小的最大值。默认为2M。
3 、如果要上传 > 8M的文件,那么只设置上述四项还不定一定可以。最好对下面的参数也进行设置:
查找max_execution_time
= 600 ;每个PHP页面运行的最大时间值(秒),默认30秒。
max_input_time
= 600 ;每个PHP页面接收数据所需的最大时间,默认60秒 。
memory_limit
= 8M ;每个PHP页面所吃掉的最大内存,默认8M。

二、修改c:/phpmyadmin/import.php文件。
用写字板打开import.php文件:
1 、查找$memory_limit,默认为$memory_limit = 2 * 1024 * 1024 ;自己修改。
2 、下边三四行的位置有同样的语句,自己修改。

三、到这里还不行,IIS的问题。

1 )解决在 IIS 6.0 中,无法上传大容量文件的办法:
1 、先在服务里关闭 iis admin service 服务。
2 、找到 windows/system32/inetsrv/ 下的 metabase.xml 文件。
3 、用写字板打开,找到 ASPMaxRequestEntityAllowed 把它修改为需要的值(默认为: 204800 ,即:200K)。
4 、存盘,然后重启 iis admin service 服务,重启IIS。

2 )解决在 IIS 6.0 中,无法下载超过4M的附件步骤:
1 、先在服务里关闭 iis admin service 服务。
2 、找到 windows/system32/inetsrv/ 下的 metabase.xml 文件。
3 、用写字板打开,找到 AspBufferingLimit 把它修改为需要的值(默认为: 4194304 ,即:4MB)。
4 、存盘,然后重启 iis admin service 服务,重启IIS



又一方法(算是补充吧):
二、数据备份和恢复
默认的数据导出、和导入最大文件有2M的最大限制。如果要操作大于2M的数据库备份文件就需要预先将文件上传到phpmyadmin的某个目录。

1 .首先在phpmyadmin个跟目录建立一个目录,比如叫ports

2 .在config. default .php中搜$cfg [ 'UploadDir' ] ,这个变量定义保存导入文件存放的目录,它下面的$cfg [ 'SaveDir' ] 定义的是数据导出文件的存放目录,我们都定义为ports

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


要注意的是ports目录的权限,saveDir只要能让php脚本往里边写东西。最后的就是操作完了,务必清空改目录,防止数据被别有用心的人下载


另外一种方法::

MYSQL导入导出.sql文件
一.MYSQL的命令行模式的设置:
桌面->我的电脑->属性->环境变量->新建->
PATH=“;path/mysql/bin;”其中path为MYSQL的安装路径。
二.简单的介绍一下命令行进入MYSQL的方法:
1.C:/>mysql -h hostname -u username -p
按ENTER键,等待然后输入密码。这里hostname为服务器的名称,如localhost,username为MYSQL的用户名,如root。
进入命令行后可以直接操作MYSQL了。
2.简单介绍一下MYSQL命令:
  mysql->CREATE DATABASE dbname;//创建数据库
  mysql->CREATE TABLE tablename;//创建表
  mysql->SHOW DATABASES;//显示数据库信息,有那些可用的数据库。
  mysql->USE dbname;//选择数据库
  mysql->SHOW TABLES;//显示表信息,有那些可用的表
  mysql->DESCRIBE tablename;//显示创建的表的信息
三.从数据库导出数据库文件:
1.将数据库mydb导出到e:/mysql/mydb.sql文件中:
打开开始->运行->输入cmd 进入命令行模式
c:/>mysqldump -h localhost -u root -p mydb >e:/mysql/mydb.sql
然后输入密码,等待一会导出就成功了,可以到目标文件中检查是否成功。
2.将数据库mydb中的mytable导出到e:/mysql/mytable.sql文件中:
c:/>mysqldump -h localhost -u root -p mydb mytable>e:/mysql/mytable.sql
3.将数据库mydb的结构导出到e:/mysql/mydb_stru.sql文件中:
c:/>mysqldump -h localhost -u root -p mydb --add-drop-table >e:/mysql/mydb_stru.sql
四.从外部文件导入数据到数据库中:
从e:/mysql/mydb2.sql中将文件中的SQL语句导入数据库中:
1.从命令行进入mysql,然后用命令CREATE DATABASE mydb2;创建数据库mydb2。
2.退出mysql 可以输入命令exit;或者quit;
3.在CMD中输入下列命令:
c:/>mysql -h localhost -u root -p mydb2 < e:/mysql/mydb2.sql
然后输入密码,就OK了。
五.下面谈一下关于导入文件大小限制问题的解决:
默认情况下:mysql 对导入文件大小有限制的,最大为2M,所以当文件很大时候,直接无法导入,下面就这个问题的解决列举如下:
1.在php.ini中修改相关参数:
影响mysql导入文件大小的参数有三个:
  memory_limit=128M,upload_max_filesize=2M,post_max_size=8M
修改upload_max_filesize=200 M 这里修改满足你需要的大小,
可以同时修改其他两项memory_limit=250M post_max_size=200M
这样就可以导入200M以下的.sql文件了。

 

转自 http://www.cnblogs.com/haik/archive/2010/10/20/1856858.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值