文章目录
- 一、Navicat导入导出
- 二、mysqldump命令导入导出
- 2.1导出
- 2.2导入(使用mysqldump导入 包含t_log表的整个数据库)
- 三、LOAD DATA INFILE命令导入导出
- 3.1设置;
- 3.2导出
- 3.3导入(使用单表数据导入load data infile的方式)
- 四、远程备份
- 4.1导出
- 4.2导入
一、Navicat导入导出
- 使用Navicat工具导入t_log共耗时45s.
- 步骤:
选择数据库运行脚本
选择你要运行的sql文件
几十M的导入要20到45之间,想像一下一T的或者更大的,这样的话效率就显得低了,所以可以用下面mysqldump命令导入导出
- 导出:
根据自己的需求来选择:结构和数据或仅结构
二、mysqldump命令导入导出
2.1导出
- ①导出表数据和表结构
语法:
mysqldump -u用户名 -p密码 数据库名>数据库名.sql
步骤:
在安装目录bin里面找到mysqldumpl.exe
再在bin目录进入cmd
输入命令:mysqldump -u用户名 -p密码 数据库名>数据库名.sql
很快就导出了
跟原始的脚本不一样,这是密密麻麻的,原始的是有空隙的
- ②只导出表结构
语法:
mysqldump -u用户名 -p密码 -d 数据库名>数据库名.sql
2.2导入(使用mysqldump导入 包含t_log表的整个数据库)
- ①方法一:
mysql>create database abc;
mysql>user abc; #选择数据库
mysql>set names utf8; #设置数据库编码
mysql>source/D:/SoftwareInstallPath/mysql-8.0.13-winx64/bin/1234567.sql; #导入数据
步骤:
进入Mysql安装目录下,在bin里面进入cmd
先进入数据库里面mysql -uroot -p密码
创建数据库:create database 数据库名
使用你创建的数据库:use xxx;
给它设置编码集set names utf8
工具里面有你创建的数据库了:
运行前面导出 的sql文件,执行命令:source xxx.sql;
就开始导入了
就导入成功了
这个方式还是非常快的。一般公司里面用的就是这种。需要大量数据
- ②方法二:
语法:
mysql -u 用户名 -p密码 数据库名<数据库名.sql
三、LOAD DATA INFILE命令导入导出
3.1设置;
在mysql.ini文件的[mysqld]代码下增加 secure_file_priv=E:/TEST 再重启 MySQL
- 查看secure_file_priv设置
show variables like 'secure%'
步骤:
首先你要去设置支持LOAD DATA INFILE命令导入导出的设置
在mysql.ini文件的[mysqld]代码下增加 secure_file_priv=C: 再重启 MySQL
就设置成功了。
3.2导出
- 语法:
select * from 表名into outfile'/文件名.sql'
运行命令:
可以看出来是非常快的。
去看一下导出来没有
3.3导入(使用单表数据导入load data infile的方式)
- 语法:
load data infile'/文件名.sql' into table表名(列名1,....);
步骤:
要保留表结构。
运行命令:
四、远程备份
在公司里面是没有工具的,服务器是linux.
4.1导出
- 语法:
mysqldump -h地址 -u用户名 -p密码 数据库名>数据库名.sql
4.2导入
- 语法:
source 数据库名.sql
现在可以去看有没