TeRiTeRi

  1. 首页
  2. 未分类
  3. 正文

MySql快速导入大SQL文件

2020年4月12日 1651点热度 0人点赞 0条评论

MySql安装位置可通过which mysql或whereis mysql找到

修改mysql配置文件my.ini,通常在/etc下

  1. 对于MyISAM,调整系统参数:bulk_insert_buffer_size(至少单个文件大小的2倍以上)
  2. 对于InnoDB,调整系统参数:innodb_log_buffer_size(至少单个文件大小的2倍以上,导入完成后可以改回默认的8M,注意不是innodb_buffer_pool_size。)
  3. 除主键外,删除其他索引,导入完成后重建索引。
  4. 关闭自动提交:autocommit=0。(请勿用set global autocommit=1;命令来关闭,否则整个MySQL系统都会停止自动commit,innodb log buffer很快就会爆满,5和6项也请仅在会话中有效,正确做法请往下看)
  5. 关闭唯一索引检查:unique_checks=0。(关闭了这一项会影响on duplicate key update的效果)
  6. 关闭外键检查:foreign_key_checks=0。
  7. insert值写在一条语句内,如:INSERT INTO yourtable VALUES (1,2), (5,5), ...;
  8. 有自增列的,设置:innodb_autoinc_lock_mode的值为2
  9. my.ini中max_allowed_packetMySQL 8.0单个packet可以允许的最大值是1GB,可以根据导入SQL文件大小进行修改修改后可通过show VARIABLES like '%max_allowed_packet%';查看

from:https://www.awaimai.com/2382.html

 

 

 

[hide reply_to_this="true"]

mysql命令导入导出sql文件

window下
1.导出整个数据库,首先打开要导出的目录
mysqldump -u 用户名 -p 数据库名 > 导出的文件名
mysqldump -u dbuser -p dbname > dbname.sql 下一行需要输入密码
mysqldump -uroot -proot [dbname]> english.sql 在本行直接输入密码
2.导出一个表
mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名
mysqldump -u dbuser -p dbname users> dbname_users.sql
3.导出一个数据库结构
mysqldump -u dbuser -p -d --add-drop-table dbname >d:/dbname_db.sql
-d 没有数据 --add-drop-table 在每个create语句之前增加一个drop table
4.导入数据库
常用source 命令
进入mysql数据库控制台,如
mysql -u root -p
mysql>use 数据库
然后使用source命令,后面参数为脚本文件(如这里用到的.sql)
mysql>source d:/dbname.sql
linux下
一、导出数据库用mysqldump命令(注意mysql的安装路径,即此命令的路径):
1、导出数据和表结构:
mysqldump -u用户名 -p密码 数据库名 > 数据库名.sql
#/usr/local/mysql/bin/   mysqldump -uroot -p abc > abc.sql
敲回车后会提示输入密码
2、只导出表结构
mysqldump -u用户名 -p密码 -d 数据库名 > 数据库名.sql
#/usr/local/mysql/bin/   mysqldump -uroot -p -d abc > abc.sql
注:/usr/local/mysql/bin/  --->  mysql的data目录
二、导入数据库
1、首先建空数据库
mysql>create database abc;
2、导入数据库
方法一:
(1)选择数据库
mysql>use abc;
(2)设置数据库编码
mysql>set names utf8;
(3)导入数据(注意sql文件的路径)
mysql>source /home/abc/abc.sql;
方法二:
mysql -u用户名 -p密码 数据库名 < 数据库名.sql
#mysql -uabc_f -p abc < abc.sql

[/hide]

标签: 暂无
最后更新:2020年4月12日

kamisamak

这个人很懒,什么都没留下

点赞
< 上一篇
下一篇 >

文章评论

razz evil exclaim smile redface biggrin eek confused idea lol mad twisted rolleyes wink cool arrow neutral cry mrgreen drooling persevering
取消回复

COPYRIGHT © 2023 TeRiTeRi. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang