数据库的备份、导入、导出是我们经常遇到的问题,而mysql数据库的广泛使用,受到越来越多人的喜欢。我个人比较喜欢用mysql,其实和mysql结缘还是大二的时候,当时自己的机器装上微软的SQL2000后都跑不起来……后来,听老师说mysql比较小,而且又是命令行操作(我个人最喜欢命令行下搞东西^_^),所以就下了mysql5.0安装,果然,mysql用起来就是爽,尽管当时没有安装图形用户,可是运行起来机器一点也不卡,难以想象,自己当初的那个p2的cpu256的内存跑个烂本本还如鱼得水……呵呵 ………………………… 言归正传吧! 下面我和大家一起来学习mysql的备份、导入、以及导出命令 我们还是先到mysql的命令行下吧: ×××××××××××××××××××××××××××××××××××××××××××××× >mysql -uroot -p 输入密码:****** mysql> drop database if exists test;
mysql> create database test; mysql> use test; mysql> insert into t_student values(1,'zhangsan','male','1986-11-24'); 好了,到这里我们的数据库创建,表的创建、初始化就结束了 ×××××××××××××××××××××××××××××××××××××××××××××× 一、备份数据库 备份数据库包括三层含义 1.导出整个数据库 进入mysql安装目录下bin目录(当然如果你的bin已经包含在path目录下,在任何目录下都可以) 用法:mysqldump -u 用户名 -p 数据库名 > 导出的文件名 mysqldump -uroot -p test>c:/temp/db_test.backup 输入密码:****** 备份成功!现在我们以文本的方式打开c:/temp/db_test.backup这个文件,你会发现新大陆的^_^^_^ 2.导出一个表 mysqldump -uroot -p test t_student>c:/temp/db_test.t_student.backup 3.导出一个数据库结构 这个说起来有点抽象,一会儿,我慢慢解释…… 用法:mysqldump -uroot -p -d --add-drop-table 数据库名>导出文件名 mysqldump -uroot -p -d --add-drop-table test>c:/temp/db_test.structure.backup **注意: -d表示没有数据 --add-drop-table表示在每一个create语句之前添加一个drop table语句 打开c:/temp/db_test.structure.backup文件,和先前的两个文件比较,你会发现该文件里没有我们插入的数据 二、导入数据库 1.source命令 用法:mysql -uroot -p 输入密码:****** mysql>use 数据库名; mysql>source 备份的数据库文件 mysql>source c:/temp/db_test.backup; 2.直接mysql -uroot -D数据库名< 备份的数据库文件 >mysql-uroot -p -Dtest<c:/temp/db_test.backup; 输入密码:****** 三、数据的导入、导出 1.数据的导入 **注意:文本数据应符合的格式:字段数据之间用tab键隔开,null值用n来代替 这里我给t_student表添加一条记录,格式如下: 1 zhangsan male 1986-11-24 保存为a.data文件名 用法: load data infile "文件名" into table 表名; 或者load data infile "文件名" into table 数据库名.表名 mysql -uroot -p 输入密码:****** mysql>use test; mysql>load data infile "c:/temp/a.data" into table t_student; **注意:你最好将文件复制到mysql/bin目录下,并且要先用use命令打表所在的库 2.数据的导出 mysql>select * from 数据库.数据表名 into outfile "文件名" mysql>select * from test.t_student into outfile "c:/temp/data.out" 当然你也可以先use test;再select * from t_student into outfile "c:/temp/data.out" |
|