mysql数据库的备份方法,语句命令
查看磁盘空间情况:既然是定时备份,就要选择一个空间充足的磁盘空间,避免出现因空间不足导致备份失败,数据丢失的恶果! 存储到当前磁盘这是最简单,却是最不推荐的;服务器有多块硬盘,最好是把备份存放到另一块硬盘上;有条件就选择更好更安全的存储介质;# df -hFilesystem Size Used Avail Use% Mounted on/dev/mapper/VolGroup-lv_root 50G 46G 1.6G 97% /tmpfs 1.9G 92K 1.9G 1% /dev/shm/dev/sda1 485M 39M 421M 9% /boot/dev/mapper/VolGroup-lv_home 534G 3.6G 503G 1% /home1234561234562、创建备份目录:上面我们使用命令看出/home下空间比较充足,所以可以考虑在/home保存备份文件;cd /homemkdir backupcd backup1231233、创建备份Shell脚本:注意把以下命令中的DatabaseName换为实际的数据库名称; 当然,你也可以使用其实的命名规则!vi bkDatabaseName.sh11输入/粘贴以下内容:#!/bin/bashmysqldump -uusername -ppassword DatabaseName > /home/backup/DatabaseName_$(date +%Y%m%d_%H%M%S).sql1212对备份进行压缩:#!/bin/bashmysqldump -uusername -ppassword DatabaseName | gzip > /home/backup/DatabaseName_$(date +%Y%m%d_%H%M%S).sql.gz1212注意: 把 username 替换为实际的用户名; 把 password 替换为实际的密码; 把 DatabaseName 替换为实际的数据库名;4、添加可执行权限:chmod u+x bkDatabaseName.sh11添加可执行权限之后先执行一下,看看脚本有没有错误,能不能正常使用;./bkDatabaseName.sh115、添加计划任务检测或安装 crontab确认crontab是否安装: 执行 crontab 命令如果报 command not found,就表明没有安装# crontab-bash: crontab: command not found
弈安传媒科技回复,成功后要回复哟,要点赞,并关注,转发.
[弈安传媒科技提升自己的平台]更多知识请关注:号及公众号 弈安传媒科技
Linux下如何实现Mysql数据库每天自动备份定时备份?
这个非常简单,主要分为2步,先创建备份脚本,然后添加crontab定时任务就行,下面我简单介绍一下实现过程,主要内容如下:
1.首先,创建MySQL数据库备份脚本bktest.sh,这里主要用到mysqldump这个MySQL备份命令,传入用户名、密码和数据库名,压缩重定向到备份目录就行,如下,非常简单,这里以备份MySQL自带的test数据库为例:
2.接着就是给bktest.sh脚本添加一下执行权限,然后执行脚本测试一下,看是否能正常备份,如下,说明脚本已经可以正常备份:
3.然后就是crontab将这个备份脚本添加到定时任务重中,运行“crontab -e”命令,添加定时任务,这里先以每分钟运行一次备份脚本测试一下,看定时任务否能正常执行,如下,直接编辑“*/1 * * * * /root/bktest.sh”保存就行(这里替换成你脚本的路径就行):
至于6个字段的具体含义,如下,分别代表分、时、天、月、星期和执行命令,网上资料非常丰富,可以参考一下:
4.最后,查看一下备份目录的文件以及cron的日志,如下,说明添加的定时备份任务已经能正常运行,最后这里再替换成每天备份就行,例如,每天凌晨3:30备份一次MySQL数据库,编辑“30 3 * * * /root/bktest.sh”保存就行:
至此,我们就完成了Linux环境下MySQL数据库的自动定时备份。总的来说,整个过程非常简单,主要分为2步,先创建备份脚本,然后添加定时任务,只要你有一定的Linux基础,熟悉一下上面的脚本和命令,很快就能掌握的,网上也有相关教程和资料,非常详细,感兴趣的话,可以搜一下,希望以上分享的内容能对你有所帮助吧,也欢迎大家评论、留言进行补充。
MySQL数据库备份和还原的常用命令?
1.备份MySQL数据库的命令
mysqldump -hhostname -uusername -ppassword databasename > backupfile.sql
2.备份MySQL数据库为带删除表的格式,能够让该备份覆盖已有数据库而不需要手动删除原有数据库。
mysqldump -–add-drop-table -uusername -ppassword databasename > backupfile.sql
3.直接将MySQL数据库压缩备份
mysqldump -hhostname -uusername -ppassword databasename | gzip > backupfile.sql.gz
4.备份MySQL数据库某个(些)表
mysqldump -hhostname -uusername -ppassword databasename specific_table1 specific_table2 > backupfile.sql
5.同时备份多个MySQL数据库
mysqldump -hhostname -uusername -ppassword –databases databasename1 databasename2 databasename3 > multibackupfile.sql
6.仅仅备份数据库结构
mysqldump –no-data –databases databasename1 databasename2 databasename3 > structurebackupfile.sql
7.备份服务器上所有数据库
mysqldump –all-databases > allbackupfile.sql
8.还原MySQL数据库的命令
mysql -hhostname -uusername -ppassword databasename < backupfile.sql
9.还原压缩的MySQL数据库
gunzip < backupfile.sql.gz | mysql -uusername -ppassword databasename
10.将数据库转移到新服务器
mysqldump -uusername -ppassword databasename | mysql –host=*.*.*.* -C databasename
"