目录
一、用工具导出导入
1.1、导入:
共耗时:
1.2、导出表
共耗时:
二、用命令语句导出导入
2.1、mysqldump速度快
导出表数据和表结构
共耗时:
只导出表结构
导入
共耗时:
2.2、load data infie(速度更快--针对单表)
导出:
共耗时:
编辑 导入
删除数据
编辑
共耗时:
三、备份(远程操作)
导出
导入
四、思维导图总结
一、用工具导出导入
Navicat(速度慢)
1.1、导入:
第一步:右键---->运行SQL文件
第二步:点击旁边三个点,找到sql文件放的位置,点击开始
共耗时:
可以发现55.7mb,花了30秒
1.2、导出表
第一步:右键点击转储SQL文件,选择要数据还是表结构
共耗时:
可以发现55.7mb,花了9秒
二、用命令语句导出导入
2.1、mysqldump速度快
一般公司用mysqldump,而不用load data infie,在公司用linux,没有工具Navicat
导出表数据和表结构
在mysql安装的所在地运行
第一步:找到mysql下载地,进入bin目录下,有mysqldump
第二步:在导航栏输入cmd,然后回车
第三步:输入,然后回车
语法:mysqldump -u用户名 -p密码 数据库表名 >数据库表名.sql
mysqldump -uroot -p123 xxx>xxx.sql
成功导入:没有间隙,密密麻麻
共耗时:
可以发现55.7mb,花了3秒
原始数据:有间隙整整齐齐
只导出表结构
语法:mysqldump -y用户名 -p密码 -d 数据库名 >数据库名.sql
导入
先进到数据库:mysql -uroot -p 然后输入密码进入
创建数据库:create database xxx;
使用数据库:use xxx;
设置编码集:set names utf8;
导出:source xxx.sql;
共耗时:
可以发现55.7mb,花了10秒
2.2、load data infie(速度更快--针对单表)
注:load data infie不是默认支持的
导出:
第一步:做一个设置----支持load data infie
查看设置,为null就是没设置
show variables like 'secure%'
第二步:找到my.ini文件,在末尾加上
secure_file_priv=C:前面代表权限,后面是导的位置在C盘
secure_file_priv=C:
第三步:重启服务
第四步:运行sql
语法:select * from 表名 into outfile '路径/文件名.sql'
select * from t_log into outfile 'C:/sql/t_log.sql'
共耗时:
可以发现55.7mb,花了0.719秒
报错:语法错误
导入
语法:load data infile '/文件名.sql' into table 表名(列名1.....);
要保留表结构才可以导出
load data infile 'C:/sql/t_log.sql' into table t_log(id,ip,userid,moduleid,content,createdate,url);
删除数据
右键清空表
共耗时:
可以发现55.7mb,花了6.91秒
三、备份(远程操作)
与上面2.1一样,只不过多个ip
导出
第一步:找到mysql下载地,进入bin目录下,有mysqldump
第二步:在导航栏输入cmd,然后回车
第三步:输入,然后回车
语法:mysqldump -h ip地址 -u用户名 -p密码 数据库名>数据库.sql
mysqldump -h 192.168.198.132 -uroot -p1234 654321>654321.sql
运行回车在那个目录就可以找到他了
导入
语法:
sourece 数据库表名.sql