前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >如何创建MySQL的物理备份

如何创建MySQL的物理备份

原创
作者头像
藕丝空间
发布2018-08-15 16:13:10
1.6K0
发布2018-08-15 16:13:10
举报

虽然mysqldump工具是数据库系统的首选备份方法,但它仅在数据库服务器可运行时才有效。如果无法启动数据库或无法访问主机系统,我建议直接复制数据库。

如果你对服务器系统可以正常访问,您可以参考使用mysqldump备份MySQL或MariaDB这篇文章。

注意 本教程需要一台已经设置好可以使用sudo命令的非root账号的服务器,并且已开启防火墙。没有服务器的同学可以在这里购买,不过我个人更推荐您使用免费的腾讯云开发者实验室进行试验,学会安装后在购买服务器

创建备份

首先,请停止mysql服务:

代码语言:javascript
复制
systemctl stop mysql

找到您的数据库目录。在大多数系统上它应该是/var/lib/mysql/,但如果该目录不存在,请检查/etc/mysql/my.cnf数据目录的路径。

创建用于存储备份的目录。本教程将使用/opt/backups,但您可以根据自己的需要进行更改:

代码语言:javascript
复制
mkdir /opt/db-backups

将MySQL的数据目录复制到存储位置。cp命令,rsync或其它方法将正常工作,但我们将使用tar递归复制并在同一时间gzip压缩的备份。根据需要更改数据库目录,备份文件名和目标目录; -$(date +%F)命令将插入一个时间戳到文件名。

代码语言:javascript
复制
tar cfvz /opt/db-backups/db-$(date +%F).tar.gz /var/lib/mysql/*

重启MySQL服务:

代码语言:javascript
复制
systemctl restart mysql

还原备份

  • 将您的工作目录更改为可以提取上面创建的tarball的位置。在此示例中使用当前用户的主目录:
代码语言:javascript
复制
cd
  • 停止mysql服务:
代码语言:javascript
复制
systemctl stop mysql
  • 将tarball解压缩到工作目录。将命令中的tarball文件名更改为要还原到日期的文件名。
代码语言:javascript
复制
tar zxvf /opt/db-backups/db-archive.tar.gz -C .
  • 如果您想保留它们,请将/ var / lib / mysql的当前内容移动到另一个位置,或者完全删除它们。 创建一个新的空mysql文件夹以恢复备份的DMBS。
代码语言:javascript
复制
mv /var/lib/mysql /var/lib/mysql-old
mkdir /var/lib/mysql
  • 将备份的数据库系统复制到空文件夹:
代码语言:javascript
复制
mv ~/var/lib/mysql/* /var/lib/mysql
  • 为刚恢复的文件设置适当的权限:
代码语言:javascript
复制
chown -R mysql:mysql /var/lib/mysql
  • 重启MySQL服务:
代码语言:javascript
复制
systemctl restart mysql

更多信息

有关此主题的其他信息,您可能需要参考以下资源。虽然提供这些是希望它们有用,但请注意,我们无法保证外部托管材料的准确性或及时性。

自建服务器难免会遇到这样的问题,但是如果您在生产环境使用,我还是建议您直接使用云关系型数据库,云关系型数据库让您在云中轻松部署、管理和扩展的关系型数据库,提供安全可靠、伸缩灵活的按需云数据库服务。腾讯云关系型数据库提供 MySQL、SQL Server、MariaDB、PostgreSQL 数据库引擎,并针对数据库引擎的性能进行了优化。云关系型数据库是一种高度可用的托管服务,提供容灾、备份、恢复、监控、迁移等数据库运维全套解决方案,可将您从耗时的数据库管理任务中解放出来,让您有更多时间专注于您的应用和业务。更多Linux教程请前往腾讯云+社区学习更多知识。


参考文献:《Create Physical Backups of your MariaDB or MySQL Databases》

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 创建备份
  • 还原备份
  • 更多信息
相关产品与服务
云数据库 SQL Server
腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档