1. 表的导出
1.1. SELECT ... INTO OUTFILE ...
- 语法格式
SELECT columnlist FROM table WHERE condition
INTO OUTFILE 'filepath' [OPTIONS]
- 将 test 数据库中的 table01 表的记录导出:
select * from table01 into outfile '/var/lib/mysql/table01.txt';
- 一些说明
这种操作必须登陆了客户端才能够进行;
这种方式只能将表的记录导出到服务器所在机器,不能在远程连接的情况下导出到本地;
1.2. mysqldump
- 语法格式
mysqldump dbname [tables] -u username -p -T path
- 将 test 数据库中的 table01 表的记录导出
mysqldump test table01 -u root -p -T /var/lib/mysql/
- 一些说明
由于 tables 是可选值,如果省略,则导出数据库的所有表;
选项 -T 代表的是导出的目录,而不是文件路径;
1.3. mysql
- 语法格式
mysql -u root -p --execute="SELECT 语句" dbname > filename.txt
- 将 test 数据库中的 table01 表的记录导出
mysql test -u root -p -e "select * from table01" > table01.txt
- 一些说明
这种方式导出的记录可读性更强;
可以使用 --html 或者 --xml 选项导出成其它形式的文件;
2. 表的导入
2.1. LOAD DATA INFILE ...
- 语法格式
load data infile 'filename.txt' into table tbname [OPTIONS] [IGNORE number LINES]
- 从文本文件中还原数据
load data infile '/var/lib/mysql/table01.txt' into table test.table01;
2.2. mysqlimport
- 语法格式
mysqlimport dbname filename.txt -u root -p
- 从文本文件中还原数据
mysqlimport test /var/lib/mysql/table01.txt -u root -p
- 一些说明
filepath 的文件名开头必须为数据库已存在的表名;