导出数据
导出表作为原始数据
mysqldump
是MySQL用于转存储数据库的实用程序。它主要产生一个SQL脚本,其中包含从头重新创建数据库所必需的命令CREATE TABLE INSERT等。
使用mysqldump导出数据需要使用 --tab 选项来指定导出文件指定的目录,该目标必须是可写的。
以下实例将数据表 tutorials_tbl 导出到 /tmp 目录中:
$ mysqldump -u root -p --no-create-info \
--tab=/tmp W3CSCHOOL w3cschool_tbl
password ******
导出SQL格式的数据
导出SQL格式的数据到指定文件,如下所示:
$ mysqldump -u root -p W3CSCHOOL w3cschool_tbl > dump.txt
password ******
如果你需要导出整个数据库的数据,可以使用以下命令:
$ mysqldump -u root -p W3CSCHOOL > database_dump.txt
password ******
如果需要备份所有数据库,可以使用以下命令:
$ mysqldump -u root -p --all-databases > database_dump.txt
password ******
–all-databases 选项在 MySQL 3.23.12 及以后版本加入。
该方法可用于实现数据库的备份策略。
mysql中导出指定条件的数据
mysqldump -u用户名 -p密码 -h mysql主机 --default-character-set=指定编码 数据库名称 表名称 --where=" 查询条件 " > 导出文件名.sql
mysqldump -uroot -p123456 -h192.168.1.123 --default-character-set=utf8 mydbname mytablename --where="sid = 123456 and name = '
小明同学'
" > my_export_data.sql
导入数据
使用 mysqlimport 导入数据
mysqlimport客户端提供了LOAD DATA INFILEQL语句的一个命令行接口。mysqlimport的大多数选项直接对应LOAD DATA INFILE子句。
从文件 dump.txt 中将数据导入到 mytbl 数据表中, 可以使用以下命令:
$ mysqlimport -u root -p --local database_name dump.txt
password *****
使用source命令
假设我们在/Users/didi/Desktop
目录有一个table_a.sql
文件;
步骤:
- 首先在shell中进入到该目录;
cd /Users/didi/Desktop
- 进入到mysql命令行
# 进入到mysql命令行
mysql> use database_name;
mysql> source /Users/didi/Desktop/table_a.sql;
即可。