mysql> use phptest;
Database Changed
mysql> select * from driver into outfile 'a.txt';
这样导出的结果只有数据
1 Mika Hakinnen 1
2 David Coulthard 1
3 Michael Schumacher 2
4 Rubens Barrichello 2
利用mysqldump导出
mysqldump phptest > a.sql
结果为:
CREATE TABLE driver (
drv_id int(11) DEFAULT '0' NOT NULL auto_increment,
drv_forename varchar(15) DEFAULT '' NOT NULL,
drv_surname varchar(25) DEFAULT '' NOT NULL,
drv_team int(11) DEFAULT '0' NOT NULL,
PRIMARY KEY (drv_id)
);
#
# Dumping data for table 'driver'
#
INSERT INTO driver VALUES (1,'Mika','Hakinnen',1);
INSERT INTO driver VALUES (2,'David','Coulthard',1);
INSERT INTO driver VALUES (3,'Michael','Schumacher',2);
INSERT INTO driver VALUES (4,'Rubens','Barrichello',2);
如果只想卸出建表指令,则命令如下:
mysqldump -d phptest > a.sql
如果只想卸出插入数据的sql命令,而不需要建表命令,则命令如下:
mysqldump -t phptest > a.sql
那么如果我只想要数据,而不想要什么sql命令时,应该如何操作呢?
mysqldump -T./ phptest driver
2.mysql数据导入:
使用load命令:
load data infile 'driver.txt' into table driver fields terminated by ',' enclosed by '"';
使用mysqlimport实用程序:
Mysqlimport --fields-terminated-by=, --fields-enclosed-by=" phptest driver.txt
3.常用mysql导入与导出:
mysqldump -u root -p -h localhost -B databasename > d:/a.sql
1.导出整个数据库
mysqldump -u 用户名 -p 数据库名 > 导出的文件名
mysqldump -u wcnc -p smgp_apps_wcnc > wcnc.sql
2.导出一个表
mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名
mysqldump -u wcnc -p smgp_apps_wcnc users> wcnc_users.sql
3.导出一个数据库结构
mysqldump -u wcnc -p -d --add-drop-table smgp_apps_wcnc >d:/wcnc_db.sql
-d 没有数据 --add-drop-table 在每个create语句之前增加一个drop table
4.导入数据库
常用source 命令
进入mysql数据库控制台,
如mysql -u root -p
mysql>use 数据库
然后使用source命令,后面参数为脚本文件(如这里用到的.sql)
mysql>source d:/wcnc_db.sql