命令行模式下备份、还原MySQL数据库的语句小结
2023-06-13 09:14:40 时间
为了安全起见,需要经常对数据库作备份,或者还原。对于MySQL而言,最方便的方法可能就是用phpMyAdmin的导出、导入功能了,但如果你的数据库体积比较大,作为Web应用的phpMyAdmin可能会遭遇“超时”而操作失败。所以,学会在命令行模式下备份、还原数据库,还是很有必要的。
1、备份数据库
在Linux命令行模式下备份MySQL数据库,用的是mysqldump命令:
复制代码代码如下:
1、备份数据库
在Linux命令行模式下备份MySQL数据库,用的是mysqldump命令:
mysqldump-umysqluser-ptest_db
对以上命令稍作解释:
•-u意味着你要指定一个MySQL用户名来连接数据库服务,如上面的mysqluser即为MySQL用户名。
•-p则意味着你需要有一个有效的,与以上用户名对应的密码。
•最后一个参数则是需要备份的那个数据库的名称:test_db
如果直接执行以上命令,紧接着就会提示需要输入MySQL密码,数据密码后,它会直接将备份出来的SQL脚本显示在屏幕上,这当然不是我们想要的结果。我们需要把数据库备份成一个文件,可用以下命令:
mysqldump-umysqluser-ptest_db>test_db.sql
这样,就会在当前目录下备份出一个名为test_db.sql的文件。
当然,如果数据库体积比较大,通常会对备份出来的文件进行压缩,备份和压缩可以在同一行命令内完成:
mysqldump-umysqluser-ptest_db|gzip>test_db.sql.gz
压缩的时候,最好再给文件名加上扩展名.gz,以便下次还原数据库的时候心中有数。
2、还原数据库
还原数据库的命令也很简单,如果你备份出来的文件是未压缩的版本,则还原数据库的命令如下:
cattest_db.sql|mysql-umysqluser-ptest_db
用cat命令,把SQL脚本内容输出给MySQL程序以便还原。可以看到,MySQL后面的几个参数,跟备份时候的一样。
如果是已压缩版本的备份文件,则需用以下命令才能还原:
gunzip<test_db.sql.gz|mysql-umysqluser-ptest_db
类似地,用gunzip命令,解压缩,然后把脚本内容输出给MySQL程序以便还原。
2012-10-08update:
如不考虑将.sql文件压缩打包的话,也可以用下面两条语句分别导出、导入。
mysqldump-uroot-ptest_db>test_db.sql
mysql-uroot-ptest_db<test_db.sql
备份MySQL数据库的命令
mysqldump-hhostname-uusername-ppassworddatabasename>backupfile.sql
备份MySQL数据库为带删除表的格式
备份MySQL数据库为带删除表的格式,能够让该备份覆盖已有数据库而不需要手动删除原有数据库。
mysqldump-?add-drop-table-uusername-ppassworddatabasename>backupfile.sql
直接将MySQL数据库压缩备份
mysqldump-hhostname-uusername-ppassworddatabasename|gzip>backupfile.sql.gz
备份MySQL数据库某个(些)表
mysqldump-hhostname-uusername-ppassworddatabasenamespecific_table1specific_table2>backupfile.sql
同时备份多个MySQL数据库
mysqldump-hhostname-uusername-ppassword?databasesdatabasename1databasename2databasename3>multibackupfile.sql
仅仅备份数据库结构
mysqldump?no-data?databasesdatabasename1databasename2databasename3>structurebackupfile.sql
备份服务器上所有数据库
mysqldump?all-databases>allbackupfile.sql
还原MySQL数据库的命令
mysql-hhostname-uusername-ppassworddatabasename<backupfile.sql
还原压缩的MySQL数据库
gunzip<backupfile.sql.gz|mysql-uusername-ppassworddatabasename
将数据库转移到新服务器
mysqldump-uusername-ppassworddatabasename|mysql?host=*.*.*.*-Cdatabasename
相关文章
- linux下mysql开启慢查询详解数据库
- MySQL实战入门:打造稳定可靠的数据库系统(mysql比较好的书)
- MySQL技能:必备必知(mysql必知必会)
- 分析MySQL数据库日志分析实践(mysql数据库日志)
- MySQL DBA手册:完美掌握数据库管理(mysqldba手册)
- MySQL 增强:探索新的可能性(mysql增1)
- MySQL命令行基础操作:快速入门(mysql命令行基本操作)
- 挑战MySQL二级考试,提升你的数据库技能(mysql二级考试)
- MySQL清空表的最佳实践:TRUNCATE TABLE(mysql清空表命令)
- 如何使用MySQL进行数据库克隆操作?(mysql克隆数据库)
- MySQL命令行操作入门!(mysql命令行执行)
- PHP添加MySQL扩展:快速实现数据库连接(php添加mysql扩展)
- MySQL数据库表之间同步实现(mysql数据库表同步)
- MySQL运维内参:优化数据表、备份恢复、安全管理、集群分布式实践、性能调优等详细说明,成为MySQL运维人员必备的指南书籍。(mysql运维内参)
- MySQL: 如何查询前十条数据?(mysql查询前十条)
- MySQL新建数据库连接详解(mysql新建数据库连接)
- 如何更有效地清理MySQL数据库(mysql 清理数据库)
- MySQL还原单个表的小技巧(mysql 还原单个表)
- MySQL操作指南:如何查看表结构(mysql怎么看表)
- 解决MySQL导入数据库乱码问题(mysql导入数据库乱码)
- MySQL的MVCC技术:实现数据库性能的优化篇(mvcc mysql)
- 学习MySQL数据库:一段总结历程(mysql 数据库 总结)
- 求救!MySQL数据库密码忘记了!(mysql数据库密码忘记)
- MySQL 服务重新开始,提升数据库性能(mysql服务重启)
- ASP技术可以驱动MySQL吗(asp能连接mysql吗)
- 6天玩转MySQL源码,尽览数据库开发新视界(6天玩转mysql源码)
- 使用CMD命令关闭Mysql数据库(cmd关闭mysql代码)
- MySQL只读权限设置(mysql z只读)
- MySQL数据库禁止远程连接如何解决(mysql 不允许远程)
- MySQL下载打造个人博客首选数据库(mysql下载 博客)
- MySQL免费下载,轻松学习数据库基础(mysql下载免费)
- MySQL下载安装教程,轻松上手(mysql下载了怎么安载)
- 解决MySQL启动失败的问题(mysql不能启动服务)
- 无需登录,轻松查询MySQL快速入门方法(mysql 不登录查询)
- MySQL不能做到全联接,为什么(mysql不支持全联)