MySQL备份命令

公司的BUG库使用的是Mantis,环境是CentOS+MySQL。经历了两次服务器宕机之后,身上的感觉数据库备份的重要性,所以查询了一些MySQL备份的命令。


mysqldump -uroot -proot --default -character-set=utf8 dbname>D:/backup.sql

直接通过“终端控制台”输入dump命令可以将MySQL数据库备份成一个sql文本文件,并且指定文件编码格式是UTF-8避免了乱码问题。


但是个方法不够智能,我总不能每天都到服务器上执行一遍dump命令吧。此时有两个办法,一是在服务器上写一个shell脚本定时执行,由于CentOS毕竟不如Windows,操作难度大尤其一旦服务器瘫痪还原难度也比较大,即使数据库备份到本地了,也不能像windows那样可以通过U盘启动之类的直接拿到硬盘中的文件。


所以我另辟蹊径,选择了第二种方法:远程备份

mysqldump --default-character-set=utf8 --set-gtid-purged=OFF --
host=10.0.3.123 --user=root --password=root
--port=3306  --add-drop-database
--extended-insert=false
--default-character-set=utf8 dbname>D:\dbBackup

先看命令,与之前的dump命令多了一些内容,host、port就不说了指的是ip和端口号。“--add-drop-database”是在备份sql文件中,create表命令前会先drop,这样还原数据库时直接执行备份的sql文件就行了,不需要先把数据库删除。


从命令上来看,用的是mysqldump,其实mySQL备份用的是MySQL的bin文件夹中的mysqldump.exe程序,所以要做远程备份,使用该命令的电脑也要安装mysql


所以我在自己的工作电脑上也安装了MySQL,然后将命令写成了批处理,使用widows的“任务计划”功能,定时允许批处理脚本,一切就都搞定了

你可能感兴趣的:(mysql,数据库备份)