MySQL数据库备份与还原
2024-09-03 22:29:20
备份数据库
1.使用mysqldump命令备份
- 备份一个数据库:mysqldump -u 用户名 -p密码 数据库名 [表名1,表名2...]>备份文件路径及名字.sql
如果没有表名,则备份整个数据库
eg: mysql -u root -p test studentinfo >D:\test.sql
- 备份多个数据库:mysqldump -u 用户名 -p --databases 数据库1,数据库2... > 备份文件路径及名字.sql
- 备份所有数据库:mysqldump -u 用户名 -p --all -databases > 备份文件路径及名字.sql
注:备份时候不一定是.sql文件扩展名,可以任意指定
2.直接复制整个数据库目录
- 将mysql数据库文件直接复制出来,最好将服务先停止,保证数据一致
- 对INNODB存储引擎的表不适用
- 还原时最好是相同版本的MySQL数据库
3.使用mysqlhotcopy工具快速备份
- 如备份时不能停止mysql服务,可使用此工具。比mysqldump命令快
- 此工具是一个Perl脚本,主要在Linux下使用
- 使用LOCK TABLES、FLUSH TABLES和cp来进行快速备份
- 原理:先将备份的数据库加上一个读操作锁,用FLUSH TABLES将内存中的数据写回到硬盘数据库中,最后将备份的数据库文件复制到目标目录
还原数据库
1.使用mysql命令还原
- mysql -u root -p[数据库名] < backup.sql
2.直接复制到数据库目录
- 和前面复制目录备份一样,将目录复制到对应的文件夹下
- windows下目录:C:/mysql/data C:/Document and Settings/All Users/Application Data/MySQL/MySQL Server5.1/data等默认路径
- Linux下:/var/lib/mysql/ /usr/local/mysql/data usr/local/mysql/var 等默认目录
- 使用mysqlhotcopy备份的数据库也是通过这种方式还原,复制到数据库目录后,要将数据库的用户和组变成mysql: chwon -R mysql.mysql dataDir
数据库迁移
1.数据库迁移分类:
- MySQL相同版本的数据库之间迁移
- 迁移到MySQL其他版本的数据库中
- 迁移到其他类型的数据库中
MySQL相同版本之间迁移:
mysqldump -h 主机名 -u root -password=password1 -all-databases |
mysql -h host2 -u root -password=password2
用SELECT...INTO OUTFILE导出文本文件
- SELECT [列名] FROM 表名 [WHERE条件] INTO OUTFILE '目标文件路径'[OPTION];
用mysqldump导出文本文件
- mysqldump -u root -pPassword -T 目录 dbname table [OPTION];
用mysql命令导出文本文件
- mysql -u root -pPassword -e "SELECT语句" dbname > D:/backup.txt
- 导出xml文件:
- mysql -u root -pPassword -xml -X -e "SELECT语句" dbname > D:/backup.xml
- 导出html文件:
- mysql -u root -pPassword --html -H -e "SELECT语句" dbname > D:/backup.html
最新文章
- OpencV2.4.13前景提取示例代码
- 【分享】SQL中的注入漏洞
- 深入理解MVVM模式中Silverlight的Trigger、Action和Behavior及Silverlight的继承机制
- FineReport集成到AWS系统中的方案
- python3下的paramiko 安装
- java写hadoop全局排序
- Android 在布局容器中动态添加控件
- JAVA帮助文档全系列 JDK1.5 JDK1.6 JDK1.7 官方中英完整版下载
- ACdream 1148(莫比乌斯反演+分块)
- .Net WebApi基本操作
- AS 实机测试 ADB.exe 提示
- [20190319]shared pool latch与library cache latch的简单探究.txt
- SQL 查看表字段及说明
- 爬虫代理及ssl验证
- 【Spring】Spring中用到的设计模式
- rabbitmq 相关
- linux Shell 脚本编写
- java 多线程之 线程优先级和守护线程
- python之路之函数03
- POJ 2923 Relocation(01背包变形, 状态压缩DP)