1. 数据备份
1)使用mysqldump命令备份
第一种:备份一个数据库
mysqldump -u username -p dbname table1 table2 ... > BackupName.sql 注: dbname表示数据库的名称; table1和table2表的名称 ,不加该参数备份整个数据库; BackupName.sql备份系统的名称
第二种:备份多个数据库
mysqldump -u username -p --databases dbname1 dbname2 ... > BackupName.sql
第三种:备份所有数据库
mysqldump -u username -p --all-databases > BackupName.sql
2)直接复制整个数据库目录
需要停止MySQL服务器
3)使用mysqlhotcopy工具快速备份
2. 数据还原
1)使用mysql命令还原
备份文件中包含CREATE语句和INSERT语句,mysql命令可以通过CREATE创建数据率和表,通过INSERT插入备份的数据
mysql -u root -p [dbname] < backup.sql
2)直接复制到数据库目录
3. 数据库迁移
1)相同版本的MySQL数据库之间的迁移
先备份再迁移,假设从host1的及机器中备份所有数据,再将数据率迁移到host2的机器上
mysqldump -h name1 -u root --password=password1 --all-databases | mysql -h host host2 -u root --password=password2
2)不同版本的MySQL数据库之间的迁移: mysqldump
3)不同数据库之间的迁移: MS SQL Server等工具 或 dump出sql语句手工修改
4. 导出和导入文本文件
1)SELECT... INTO OUTFILE导出文本文件
SELECT [列名] FROM table [WHERE 语句] INTO OUTFILE '目标文件' [OPTION];
2)mysqldump命令导出文本文件
mysqldump -u root -pPassword -T 目标目录 dbname table [option]
3)使用mysql命令导出
mysql -u root -pPassword -e " SELECT语句“ dbname > C:/name.txt; mysql -u root -pPassword --xml | -X -e " SELECT语句“ dbname > C:/name.xml; mysql -u root -pPassword --html | -H -e " SELECT语句“ dbname > C:/name.html;
4)使用LOAD DATA INFILE 方式导入文本文件
LOAD DATA [LOCAL] INFILE file INTO TABLE table [OPTION];
5)使用mysqlimport命令导入文本文件
mysqlimport -u root -pPassword [-LOCAL] dbname file [OPTION]