用户名:
密 码: 记住
您当前的位置:首页 > 网络编程 > mysql教程

mysql source命令超大文件导入方法总结

时间:2015-01-23  来源:西部数据  作者:西部数据

本文章来给各位朋友介绍利用mysql source命令超大文件导入方法总结,下面收集了两种解决办法,一种是把数据库分文件导出然后再导入,另一种是修改my.ini配置文件,下面我一一给各位朋友介绍.

导入1G的数据,但是在怎么都导入不了,用命令行就可以轻松搞定了,用mysql source命令可以导入比较大的文件,代码如下:

  1. mysql>use dbtest; 
  2. mysql>set names utf8; 
  3. mysql>source D:/www/sql/back.sql; 

通过source命令导入多个文件,可以新建一个sou.sql文件,里面存放下面的命令,代码如下:

source d:/a1.sql;

source d:/a2.sql;

当你运行,这样就可以在一个source命令里面导入多个sql文件了,但这样会有一个问题,如果有一100个这样的文件我们一个个去写命令肯定很麻烦,下面我百度搜索到一个解决办法,代码如下:

新建一个all.sql

vim all.sql

在里面写入:

  1. source 1.sql 
  2. source 2.sql 
  3. ...... 
  4. source 53.sql 
  5. source 54.sql 

然后只要:mysql> source all.sql

另一种大文件导入解决办法,这个是用服务器管理权限的用户了,mysql source 命令导入大的sql,在mysql的安装目录下 找到 my.ini文件 加入以下代码:

  1. interactive_timeout = 120 
  2. wait_timeout = 120 
  3. max_allowed_packet = 32M 

小例子:mytest_emp_dept.sql文件,内容如下:

  1. CREATE TABLE emp(eid INT PRIMARY KEY AUTO_INCREMENT, ename VARCHAR(20) NOT NULL, esex VARCHAR(10), deptid INT NOT NULL); 
  2. CREATE TABLE dept(deptid INT PRIMARY KEY AUTO_INCREMENT, dname VARCHAR(20) NOT NULL,daddress VARCHAR(200)); 
  3. INSERT INTO emp(ename,esex,deptid) VALUES('chris','M',1),('edge','M',1),('kelly','W',2),('maryse','W',2); 
  4. INSERT INTO dept(dname,daddress) VALUES('development','beijing'),('accounting','shanghai');  --phpfensi.com 
  5. SELECT ename,esex,dname,daddress FROM emp,dept WHERE emp.deptid=dept.deptid ORDER BY ename; 

导入sql的命令行如下:source "路径名"+/mytest_emp_dept.sql

来顶一下
返回首页
返回首页
推荐资讯
WiFi太不安全:7岁女孩11分钟内入侵公共网络 WiFi太不安全:7岁女孩11分钟内入侵近期刚刚发布研究说WiFi网络能获得人们手机里多少私人信息,
不服跑个分?人工智能也出现“刷分”乱象 不服跑个分?人工智能也出现“刷分2014年,人工智能领域突然爆发,成为了科研和科技创业的热门
相关文章
    无相关信息
栏目更新
栏目热门