`
fangtoby
  • 浏览: 3649 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Linux shell自动化管理mysql数据库备份与还原

阅读更多
数据库备份是非常重要的。如果定期做好备份,这样就可以在发生系统崩溃时恢复数据到最后一次正常的状态,把损失减小到最少。
一、 用命令实现备份
MySQLl提供了一个mysqldump命令,我们可以用它进行数据备份,下面假设要备份tm这个数据库:
#mysqldump -u root -p tm > tm_050519.sql
按提示输入密码,这就把tm数据库所有的表结构和数据备份到tm_050519.sql了,因为要总进行备份工作,如果数据量大会占用很大空间,这时可以利用gzip压缩数据,命令如下:
#mysqldump -u root -p tm | gzip > tm_050519.sql.gz
系统崩溃,重建系统时,可以这样恢复数据:
#mysql -u root -p tm < tm_050519.sql
从压缩文件直接恢复:
#gzip < tm_050519.sql.gz | mysql -u root -p tm
当然,有很多MySQL工具提供更直观的备份恢复功能,比如用phpMyAdmin就很方便。但我认为,mysqldump是最基本、最通用的。
二、利用crontab,系统每天定时备份mysql数据库
【内容提要】利用系统crontab来定时执行备份文件,按日期对备份结果进行保存,达到备份的目的。
利用系统crontab来定时执行备份文件,按日期对备份结果进行保存,达到备份的目的。
1、创建保存备份文件的路径/mysqldata
#mkdir /mysqldata
2、创建/usr/sbin/bakmysql文件
#vi /usr/sbin/bakmysql
输入
rq=` date +%Y%m%d `
tar zcvf /mysqldata/mysql$rq.tar.gz /var/lib/mysql
或者写成
rq=` date +%Y%m%d `
mysqldump --all-databases -u root -p密码 > /mysqldata/mysql$rq.sql
/var/lib/mysql是你数据库文件的目录,部分用户是/usr/local/mysql/data,每个人可能不同
/mysqldata/表示保存备份文件的目录,这个每个人也可以根据自己的要求来做。
3、修改文件属性,使其可执行
# chmod +x /usr/sbin/bakmysql
4、修改/etc/crontab
#vi /etc/crontab
在下面添加
01 3 * * * root /usr/sbin/bakmysql
表示每天3点钟执行备份
5、重新启动crond
# /etc/rc.d/init.d/crond restart
完成。
这样每天你在/mysqldata可以看到这样的文件
mysql20040619.tar.gz
你直接下载就可以了。
cd /usr/local/mysql/bin/
mysqldump -u用户名 -p密码 --databases 库名 >/backdata/ddd07-11-15.sql
恢复语法
mysqladmin create target_db_name
mysql target_db_name < backup-file.sql
即 mysql 库名 < 文件名
完成,注意,-u后面没有空格, 你只需要把上面的中文换成你的相关信息就可以了!
分享到:
评论

相关推荐

    Linux下mysql数据库备份以及恢复shell脚本

    总结,通过编写和使用`databackup.sh`和`datarestore.sh`这样的Shell脚本,Linux用户可以方便地对MySQL数据库进行自动化备份和恢复,确保在系统故障或数据丢失时能够迅速恢复服务,保障业务连续性。这两个脚本是IT...

    一个自动备份mysql数据库的脚本

    首先,让我们了解一下MySQL数据库备份的基本概念。数据库备份主要有两种类型:全量备份和增量备份。全量备份是指复制整个数据库或所有数据文件,而增量备份则只备份自上次备份以来发生改变的数据。在实际应用中,...

    (UNIX、Linux)MySql数据库全量备份和增量备份处理脚本,以及从ftp自动拷贝备份文件(完整操作,附带shell脚本)

    本文将详细介绍如何在UNIX/Linux环境下实现MySQL数据库的全量备份和增量备份,并通过Shell脚本来自动化这一过程。 #### 二、全量备份 全量备份是指备份整个数据库的所有数据,包括所有的表和表中的所有记录。这种...

    mysql自动备份脚本

    总的来说,MySQL自动备份脚本是数据库安全管理的重要组成部分,它结合了shell脚本的灵活性和mysqldump的强大功能,提供了可靠的数据库备份解决方案。理解并掌握这些知识对于维护数据库的安全性和可靠性至关重要。

    Mysql的文档

    "mysql自动备份shell脚本.doc"文档可能包含了如何编写和使用shell脚本来自动化MySQL数据库的备份。自动备份是防止数据丢失的关键措施,通常包括全量备份和增量备份策略。 "MySQL数据库备份与还原脚本说明.doc"应该...

    autobaktools-mcp

    1. **MySQL数据库备份**: MySQL是世界上最流行的开源关系型数据库管理系统之一。备份MySQL数据库是为了防止数据丢失或损坏,确保业务连续性和数据安全性。`autobaktools`可能使用了`mysqldump`命令来实现这一目标...

    backmeup:BackMeUp:使用Amazon S3,WebDAV(ownCloud NextCloud等),Google Drive和Dropbox在* nix机器上的自动化MySQL MariaDB数据库和文件备份解决方案

    - **数据库备份**:`BackMeUp`能够备份MySQL和MariaDB数据库,这包括创建数据库的完整快照,以便在数据丢失或损坏时进行恢复。 - **文件备份**:除了数据库,`BackMeUp`还可以备份指定的本地文件和目录,保护您的...

    Linux 50问面试常问问题

    答:通过编写shell脚本、使用Ansible、Chef、Puppet等配置管理工具,以及利用cron实现定时任务,可以实现Linux环境的自动化运维,提高效率和准确性。 以上是针对Linux面试中可能遇到的问题和相关知识的详细解答,...

    貌似很强的mysql备份策略分享

    MySQL数据库的备份与恢复是确保数据安全的重要环节。在给定的备份策略中,主要涉及了两种关键操作:`mysqldump`全量备份和`binlog`增量备份。这两种方法结合使用,可以实现高效且精确的数据恢复。 1. 全量备份:...

    RHCSA与RHCE考试实验报告

    5. **数据库服务器**:安装和管理MySQL或MariaDB数据库,进行基本的数据操作和备份恢复。 6. **集群和高可用性**:理解高可用性(HA)概念,配置GlusterFS分布式文件系统,或者使用Pacemaker和Corosync实现服务的故障...

    docker-backup:用于备份docker卷的脚本

    【docker-backup】是一个专为Docker环境设计的备份脚本,主要针对Docker容器中的数据卷...通过使用安全的环境变量传递敏感信息和自动压缩备份文件,这个脚本提供了一种高效、安全的方式来管理和维护你的数据库备份。

    备份套件:使用Cronjob将数据库,静态文件和配置备份到AWS S3

    6. **自动化恢复流程**:为了完善备份策略,还需要编写恢复脚本,以便在需要时可以从S3下载并还原数据。 通过以上步骤,你将拥有一个自动化的备份系统,能够保护你的数据库、静态文件和配置文件,防止数据丢失。这...

    Nextcloud-Backup-Restore:已移至codeberg.org-https:codeberg.orgDecaTecNextcloud-Backup-Restore-用于Nextcloud备份还原的Bash脚本

    Bash(Bourne-Again SHell)是Unix和Linux系统中常用的命令行解释器,也常被用来编写自动化任务的脚本。在这个项目中,"Nextcloud-Backup-Restore" 脚本利用Bash的强大功能来自动化Nextcloud的数据备份和恢复操作,...

    lemp-utils-scripts:适用于Ubuntu 18.04+的LEMP Bash Utils

    备份自动化与电子邮件报告。 主要特点 LEMP自动安装程序(Nginx,MySQL / MariaDB,PHP)。 文件和数据库备份(MySQL或MariaDB)。 将备份上传到Dropbox(API v2)。 从Dropbox或URL还原备份。 WordPress自动...

    计算机专业就业方向指导

    - 掌握基本的脚本语言(如Shell、Python等),能够编写简单的自动化脚本。 - 具备网络安全意识,能够采取措施保护系统免受攻击。 #### 七、信息安全工程师 **描述**:负责组织的信息安全体系规划、建设和管理,...

    cmd操作命令和linux命令大全收集

    68. ntbackup-------系统备份和还原 69. narrator-------屏幕“讲述人” 70. ntmsmgr.msc----移动存储管理器 71. ntmsoprq.msc---移动存储管理员操作请求 72. netstat -an----(TC)命令检查接口 73. syncapp----...

Global site tag (gtag.js) - Google Analytics