总结:1)备份与还原(库、表)
逻辑备份可以说是最简单,也是目前中小型系统最常使用的备份方式。在MySQL 中我们常用的逻辑备份主要就是两种,一种是将数据生成可以完全重现当前数据库中数据的INSERT 语句,另外一种就是将数据通过逻辑备份软件,将我们数据库表数据以特定分隔符进行分隔后记录在文本文件中。
mysqldump(客户端工具所以需要用户与密码)备份:将包含数据的表结构和数据内容保存到相应的文本文件,备份文件一般以.sql为扩展名,也可以使用其他的扩展名。相应的文本文件包括CREATE语句和INSERT INTO语句。
复制数据文件(物理备份):对存储引擎为InnoDB的表不可用。
mysql还原(需要用户与密码)数据,执行命令mysql时,将执行备份文件中的CREATE和INSERT INTO语句,通过执行CREATE语句创建数据库,通过执行INSERT INTO语句插入所备份的表中数据。
2)导入导出:将数据库表里的数据复制到文本文件。
select ....into outfile 将表中的内容导出成一个文本文件。
mysqldump(需要用户与密码) 不仅可以实现备份操作,还可以实现导出表操作
mysql (需要用户与密码) 不仅可以实现登入mysql数据库和还原操作,还可以实现导出表操作。
load data infile 导入到数据库表
mysqlimport (需要用户与密码) 将文本文件中的数据导入到数据库的表中。
source 需要登入数据库进行导入sql文件。
window下
1.导出整个数据库
mysqldump -u 用户名 -p 数据库名 > 导出的文件名
eg:mysqldump -u dbuser -p dbname > dbname.sql
2.导出一个表
mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名
mysqldump -u dbuser -p dbname users> dbname_users.sql
3.导出一个数据库结构
mysqldump -u dbuser -p -d --add-drop-table dbname >d:/dbname_db.sql
-d 没有数据 --add-drop-table 在每个create语句之前增加一个drop table
4.导入数据库
常用source 命令
进入mysql数据库控制台,如
mysql -u root -p
mysql>use 数据库
然后使用source命令,后面参数为脚本文件(如这里用到的.sql)
mysql>source d:/dbname.sql
linux下
一、导出数据库用mysqldump命令(注意mysql的安装路径,即此命令的路径):
1、导出数据和表结构:
mysqldump -u用户名 -p密码 数据库名 > 数据库名.sql
#/usr/local/mysql/bin/ mysqldump -uroot -p abc > abc.sql
敲回车后会提示输入密码
2、只导出表结构
mysqldump -u用户名 -p密码 -d 数据库名 > 数据库名.sql
#/usr/local/mysql/bin/ mysqldump -uroot -p -d abc > abc.sql
注:/usr/local/mysql/bin/ ---> mysql的data目录
二、导入数据库
1、首先建空数据库
mysql>create database abc;
2、导入数据库
方法一:
(1)选择数据库
mysql>use abc;
(2)设置数据库编码
mysql>set names utf8;
(3)导入数据(注意sql文件的路径)
mysql>source /home/abc/abc.sql;
方法二:
mysql -u用户名 -p密码 数据库名 < 数据库名.sql
#mysql -uabc_f -pabc < abc.sql